Hadd tänkt att ha ett Jaascript intgrerat med asp ..
Det vill säga, när man trycker på en länk så skall det komma en pop-up med information från databasen.. Något man bör tänka på?
Just det ja.. Informationerna kommer att hämtas från flera olika tabeller..
VideMedlem sedan dec. 19998 577 inlägg
Något man bör tänka på?
Att ASP-koden körs innan javascriptet.
------------------
Doesn't 'expecting the unexpected' make the unexpected expected?
webeye.nu
Men hur gör man med Rs("fältnamn")för att hämta indformation då?
VideMedlem sedan dec. 19998 577 inlägg Hur menar du? Rs("fältnamn") innehåller ju ett värde ifrån en post i ett fält i databasen.
Förklara lite närmare vad du försöker att göra så kan vi hjälpa till...
------------------
Doesn't 'expecting the unexpected' make the unexpected expected?
webeye.nu
Men hur hämtar Javascriptet information ur databasen?
Då måste den väll andvända sig av ADODB.RECORDSET för att hämta information från databasen.
VideMedlem sedan dec. 19998 577 inlägg Citerar mig själv:
Förklara lite närmare vad du försöker att göra så kan vi hjälpa till...
Men hur hämtar Javascriptet information ur databasen?
strVar = <%=rs( "färtnamn" )%>;
Som sagt, ASP-koden körs först, och på så sätt kommer värdet att finnas där när javascriptskoden körs (på klienten).
------------------
Doesn't 'expecting the unexpected' make the unexpected expected?
webeye.nu
Men om vi säger att popup'en ska gå till info.asp?råga1=värde1&fråga2=värde2
och ska öppnas i en ruta som är 400*400?
[Redigerat av cHeMiCaL-X den 22 okt 2001]
Jag kör med PatrikB's zPagin II script
och hadde tänkt mig att använda mig av detta script:
<script>
// PopUp Maker 5.0 by CodeBrain.com
// PopUp Window Script
// Place this script in the <head> of your page.
var doPopUpX = (screen.width/2)-200;
var doPopUpY = (screen.height/2)-200;
var pos = "left="+doPopUpX+",top="+doPopUpY;
function doPopUp(){
doPopUpWindow = window.open("http://xxx.xxx.xxx.xxx/katalog/script.asp?Fråga1=värde1&fråga2=värde2","Album:","width=400,height=400,"+pos);
}
</script>
och Ankar taggen som triggar popupen ser ut så här:
<a href="javascript:doPopUp()">Click Here</a>
Hur får man detta att funka?
Jag förstår att jag måste använda mig av denna typ ungefär:
<script>
// PopUp Maker 5.0 by CodeBrain.com
// PopUp Window Script
// Place this script in the <head> of your page.
var doPopUpX = (screen.width/2)-200;
var doPopUpY = (screen.height/2)-200;
var pos = "left="+doPopUpX+",top="+doPopUpY;
function doPopUp(){
doPopUpWindow = window.open("http://xxx.xxx.xxx.xxx?Fråga1=<%= RS("Värde1") %> %>&fråga2=<%= RS("Värde2")%> ","=<%= RS("Värde1")%> - <%= RS"Värde1") %>","width=400,height=400,"+pos);
}
</script>
Han anänder inte ADODN.RECORDSET
Han använder ju Getrows
Hoppas ni försär vad jag menar..
Men får det inte att funka..
[Redigerat av cHeMiCaL-X den 22 okt 2001]
[Redigerat av cHeMiCaL-X den 22 okt 2001]
Hur gör jag för att sätta värdena i URL'en?
om vi säger att man hämtar värdena med strVärde1 osv...
function doPopUp(){
doPopUpWindow = window.open("http://xxx.xxx.xxx.xxx/katalog/script.asp?Artist=värde1&fråga2=värde2","Album:","width=400,height=400,"+pos);
Just nu ser hela sidan ut så här:
<%
'## -- hämta alla poster --
Function getRecords
Dim m_objConn
Dim m_strConnString
Dim m_strSQL
Dim m_objRS
Dim m_arrRecords
m_strConnString = "provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Server.MapPath("/bypath/totalonanist/bypath.mdb")
'## -- skapa connection object och öppna upp databasen --
Set m_objConn = Server.CreateObject("ADODB.Connection")
m_objConn.Open m_strConnString
'## -- sql-fråga för att hämta alla poster --
'## -- denna ska du ändra så att den stämmer
'## med det som du vill hämta --
m_strSQL = "SELECT * " & _
"FROM Albums " & _
"ORDER BY Artist, AlbumTitle"
'## -- recordset för att hämta alla poster --
Set m_objRS = m_objConn.Execute(m_strSQL)
If Not m_objRS.EOF Then
m_arrRecords = m_objRS.GetRows
getRecords = m_arrRecords
End If
'## -- clean up --
m_objRS.Close
Set m_objRS = Nothing
m_objConn.Close
Set m_objConn = Nothing
End Function
'## -- skriver ut sidnavigeringen --
'## -- skriv ut föregående sida --
Sub PrevPage(ByVal WichPage)
Dim strScriptName
strScriptName = Request.ServerVariables("SCRIPT_NAME")
'## -- skriv ut en länk till föregående sida --
If CInt(WichPage) > 1 Then
Response.Write "<A href='" & strScriptName & "?" & _
"page=" & WichPage - 1 & "'><font face=Verdana Size=1>Previous</font></A> "
Else
Response.Write "<font face=Verdana Size=1>Previous</font> "
End If
End Sub
'## -- skriv ut nästa sida --
Sub NextPage(ByVal HowManyPages, ByVal WichPage)
Dim strScriptName
strScriptName = Request.ServerVariables("SCRIPT_NAME")
'## -- skriv ut en länk till nästa sida --
If CInt(WichPage) < CInt(HowManyPages) Then
Response.Write "<A href='" & strScriptName & "?" & _
"page=" & WichPage + 1 & "'><font face=Verdana Size=1>Next</font></A>"
Else
Response.Write " <font face=Verdana Size=1>Next</font>"
End If
End Sub
'## -- skriv ut sidnummer navigeringen --
Sub PageNumbers(ByVal HowManyPages, WichPage)
Dim strScriptName
Dim I
'## -- kolla om det finns några sidor --
If HowManyPages = 0 Then
Response.Write "0"
Exit Sub
End If
strScriptName = Request.ServerVariables("SCRIPT_NAME")
'## -- skriv ut länkar till sid nummer n.
'## Den sida som visas ska ej vara länkad --
For I = 1 To HowManyPages
If CInt(I) <> CInt(WichPage) Then
Response.Write "<A href='" & strScriptName & "?" & _
"page=" & I & "'><font face=Verdana Size=1>" & I & "</font></A> "
Else
Response.Write "<font face=Verdana Size=1><B>" & I & "</font></B> "
End If
Next
End Sub
'## -- vilken post ska pagingen börja på --
Function getStartID(ByVal PageSize, ByVal ViewPage) ' As Integer
Dim m_intStart
m_intStart = ((PageSize * ViewPage) - PageSize)
getStartID = m_intStart
End Function
'## -------------------------------------------------------------
'## -- räkna ut hur många sidor som ska visas --
'## -- updated: July 14, 2001
'## -- update by: Patrik Berggren, mrwize@mrwize.nu
'## -------------------------------------------------------------
'##
'## -- vid vissa tillfällen returnerades fel sidantal.
'## Felet/Buggen berodde på avrundningen med CInt()
'## och CLng().
'## -- Avrundningen som jag gjorde:
'##
'## m_intTotalPages = CInt((HowManyRecords / PageSize) + 0.5)
'##
'## vart i vissa fall fel och sid antalet vart fler än
'## vad det egentligen skulle vara.
'## Lösningen, hoppas jag, är att kolla hur stor resten
'## blir vid avrundning.
'## Om resten är större än 0 eller mindre än 0.5 så ska en sida
'## läggas till.
'## I annat fall så gäller avrundningen.
'## Har testat flera olika kombinationer med olika records antal
'## och sidstorlekar och ej hittat några buggar.
'## Så nu hoppas jag att denna paging är buggfri *ler*
'## -------------------------------------------------------------
Function countPages(ByVal HowManyRecords, ByVal PageSize)
Dim m_intTotalPages, m_intRest
m_intTotalPages = HowManyRecords / PageSize
If m_intTotalPages < 1 Then
m_intTotalPages = 1
Else
m_intRest = m_intTotalPages - CLng(m_intTotalPages)
If m_intRest > 0 AND m_intRest < 0.5 Then
m_intTotalPages = CLng(m_intTotalPages) + 1
Else
m_intTotalPages = CLng(m_intTotalPages)
End If
End If
'## -- return how many pages --
countPages = m_intTotalPages
End Function
'##***********************************************************************************
Dim arrRecords
Dim intPageSize
Dim intPage
Dim intStartID
Dim I
Dim intId
Dim strNamn
Dim dteDatum
Dim intTotalPages
Dim intTotalRecords
'## -- vilken sida ska visas --
intPage = Request.QueryString("page")
If intPage = "" Then intPage = 1
'## -- hur många poster ska visas per sida --
intPageSize = 25
'## -- hämta alla records, hämtas med metoden getrows och returneras
'## som en array. --
arrRecords = getRecords
'## -- vilken post är den första --
intStartID = getStartID(intPageSize, intPage)
'## -- printa ut sidan som ska visas
'## alla poster finns i arrayen arrRecords som
'## kommer från funktionen getRecords --
If IsArray(arrRecords) Then
'Response.Write "E ju en array<BR>"
'## -- hur många records finns det totalt --
intTotalRecords = UBound(arrRecords,2) + 1
'## -- hur många sidor finns det i recordsetet --
intTotalPages = countPages(intTotalRecords, intPageSize)
For I = intStartID To ((intStartID + intPageSize) -1)
intId = arrRecords(0,I)
strkommando1 = arrRecords(1,I)
strkommando2 = arrRecords(2,I)
strkommando3 = arrRecords(3,I)
strKommando4 = arrRecords(4,I)
strKommando5 = arrRecords(5,I)
%>
<html>
<head><title> Titel....</title><LINK REL=STYLESHEET HREF="bypath.css" TYPE="text/css"><script>
// PopUp Maker 5.0 by CodeBrain.com
// PopUp Window Script
// Place this script in the <head> of your page.
var doPopUpX = (screen.width/2)-200;
var doPopUpY = (screen.height/2)-200;
var pos = "left="+doPopUpX+",top="+doPopUpY;
function doPopUp(){
doPopUpWindow = window.open("http://xxx.xxx.xxx.xxx/katalog/script.asp?Fråga1=värde1&fråga2=värde2","Album:","width=400,height=400,"+pos);
}
</script>
</head>
<body background="../images/bg_color.gif" bgcolor="#FFFFFF">
<center>
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse; border-left-width:0; border-right-width:0" bordercolor="#111111" width="100%" id="AutoNumber1" height="114">
<tr>
<td width="100%" height="55" bgcolor="#FFFFFF" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1">
<p align="center">
<img border="0" src="../images/bypath-logo.gif" width="395" height="55"></td>
</tr>
<tr>
<td width="100%" height="1" style="border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: solid; border-top-width: 1; border-bottom-style: solid; border-bottom-width: 1">
<!-- #include file="menu.inc" -->
</tr>
<tr>
<td width="100%" bgcolor="#FFFFFF" height="38" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1">
<table width="100%"><tr><td width="23%"><font face="Verdana" Size="1"><b>hmm1</b></font></td><td width="28%"><font face="Verdana" Size="1"><b>hmmm2</b></font></td><td width="19%"><font face="Verdana" Size="1"><b>hmmm3</b></font></td><td width="14%"><font face="Verdana" Size="1"><b>hmmm4</b></font></td><td width="16%"><font face="Verdana" Size="1"><b>hmm5</b></font></td></tr></table>
<% Response.Write " <table width='100%'><tr><td width='23%'><font face='Verdana' Size='1'>" & strkommando1 & "</font></td><td width='28%'><font face='Verdana' Size='1'>" & strkommando2& "</font></td><td width='19%'><font face='Verdana' Size='1'>" & strkommando3& "</font></td><td width='14%'><font face='Verdana' Size='1'>" & strkommando4 & "</font></td><td width='16%'><font face='Verdana' Size='1'>" & strkommando5 & "</font></td></tr></table>"
%>
<%
If I = UBound(arrRecords,2) Then Exit For
Next
Else
'## -- inga poster fanns i db --
intPage = 0
intTotalRecords = 0
intTotalPages = 0
'## -- skriv ut att inga poster hittades --
Response.Write "<P>No records found.</P>"
End If
'## -- skriv ut sidnavigerings menyn --
Call PrevPage(intPage)
Call PageNumbers(intTotalPages,intPage)
Call NextPage(intTotalPages,intPage)
%>
</td>
</tr>
<tr>
<td width="100%" height="4" style="border-left:medium none #111111; border-right:medium none #111111; border-top-style:solid; border-top-width:1; border-bottom-style:solid; border-bottom-width:1">
<p align="center">Admin</td>
</tr>
<tr>
<td width="100%" bgcolor="#FFFFFF" height="12" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1"><b><font face="Verdana" size="1">Bypath -
indirect or retired path, less important or less direct path.</font></b></td>
</tr>
</table></center>
</body>
</html>
Hittade ett script som jag tror funkar bätte:
<!-- hide me from old browsers
function openAndCenterWindow
var the_window
{
window.open('the_url','the_window','height=400,width=400');
var window_width = 400;
var screen_height = window.screen.availHeight;
var screen_width = window.screen.availWidth;
var left_point = parseInt(screen_width / 2) - parseInt(window_width / 2);
var top_point = window.screen.height - window.screen.height;
the_window.moveTo(left_point, top_point);
}
// show me -->
Så här triggar man den..
<a href="#" onClick="openAndCenterWindow('--------.html'); return false;">länk</a>
Har testat med detta men får det inte att fungera:
Detta är för zpaging II
Response.Write "<a href='#' onClick='openAndCenterWindow('script.asp?hejhej1=" & strhejhej1 & "&hejhej2=" & strhejhej2 & "'); return false;">länk</a>
Har testat med detta men får det inte att fungera..
[Redigerat av cHeMiCaL-X den 22 okt 2001]
Var ska man lägga Javscript koden?
Den ska ju ligga mellan <Head> taggarna...
Vet inte rikigt hur jag ska göra..
VideMedlem sedan dec. 19998 577 inlägg Javascriptskoden bör väl läggas mellan HEAD-taggarna, eller fritt mellan BODY-taggarna.
------------------
Doesn't 'expecting the unexpected' make the unexpected expected?
webeye.nu
La dom mellan <head> taggarna..
Fick hjälp med det andra här: http://cgi.webforum.nu/wf/Forum11/HTML/006898.html