webForumDet fria alternativet

Javascript och ASP

13 svar · 240 visningar · startad av cHeMiCaL-X

cHeMiCaL-XMedlem sedan okt. 2001208 inlägg
#1

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
#2

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

cHeMiCaL-XMedlem sedan okt. 2001208 inlägg
#3

Men hur gör man med Rs("fältnamn")för att hämta indformation då?

VideMedlem sedan dec. 19998 577 inlägg
#4

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

cHeMiCaL-XMedlem sedan okt. 2001208 inlägg
#5

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
#6

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

cHeMiCaL-XMedlem sedan okt. 2001208 inlägg
#7

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]

cHeMiCaL-XMedlem sedan okt. 2001208 inlägg
#8

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]

cHeMiCaL-XMedlem sedan okt. 2001208 inlägg
#9

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);
cHeMiCaL-XMedlem sedan okt. 2001208 inlägg
#10

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>
cHeMiCaL-XMedlem sedan okt. 2001208 inlägg
#11

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]

cHeMiCaL-XMedlem sedan okt. 2001208 inlägg
#12

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
#13

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

cHeMiCaL-XMedlem sedan okt. 2001208 inlägg
#14

La dom mellan <head> taggarna..

Fick hjälp med det andra här: http://cgi.webforum.nu/wf/Forum11/HTML/006898.html

140 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)