Avatar billede frugaard Nybegynder
16. september 2002 - 15:21 Der er 9 kommentarer og
2 løsninger

Sende variabel til JavaScript fra ASP

Hej Alle.

Jeg sidder med et problem!

Jeg vil gerne have sendt en variabel til Javascript som jeg har liggende i ASP (VBscript). Jeg kan ikke sende den via adresselinien, da det drejer sig om en variable der kan blive temlig stor, og som indeholder HTML tags.

Er der nogen som har nogle forslag?!?
Avatar billede mccannon Nybegynder
16. september 2002 - 15:25 #1
første side
Session("flyt") = din variable

næste side
din variable = session("flyt")
session("flyt") = ""
Avatar billede a1a1 Novice
16. september 2002 - 15:26 #2
du kan da bare udskrive din varibel i dit javaskrift, det kører jo først efter at ASP en er færdig..

ala

<script language="javascript">
var jsvari = <%=aspvariable%>;
</script>

;)
Avatar billede a1a1 Novice
16. september 2002 - 15:28 #3
eller nok nærmere

<script language="javascript">
var jsvari = '<%=aspvariable%>';
</script>

;)
Avatar billede mr.meincke Nybegynder
16. september 2002 - 15:28 #4
Tjo...
<%
'DB Connection osv her...
Set total = objConn.Execute("SELECT COUNT(*) AS FOUND FROM DinTabel")
intRecCount = total("FOUND")

strDinVariabel = ""
for i = 1 to intRecCount
strDinVariabel = strDinVariabel & "blablabla plus dit felt:" & rs("Felt01")
next

strDinVariabel = Server.JSEncode(strDinVariabel)
' Hvis ikke den virker så brug:
' strDinVariabel = Replace(strDinVariabel,"'","\'")
' strDinVariabel = Replace(strDinVariabel,"""","\""")
%>
<script language="JavaScript">
document.write(<%= strDinVariabel %>)
</script>

Husk at rette til...Fik jo ikke helt vildt mange oplysninger så tag det du kan bruge ;)

//Mr.Meincke - Nicolai
Avatar billede frugaard Nybegynder
16. september 2002 - 15:29 #5
a1>>
Jeg kan desværre ikke bare sætte en java variabel, da den oprindelige variable indeholder en masse HTML tags. Så java fejler, så snart den der kommer " & ' tegn. Kan man komme uden om dette?
Avatar billede mr.meincke Nybegynder
16. september 2002 - 15:30 #6
Nå ja...Det kan man vel oxo gøre ;) Så udskift:
<script language="JavaScript">
document.write(<%= strDinVariabel %>)
</script>
med:
<script language="JavaScript">
var jsvariabel = '<%= strDinVariabel %>'
document.write(jsvariabel)
</script>

//Mr.Meincke - Nicolai
Avatar billede mr.meincke Nybegynder
16. september 2002 - 15:33 #7
Doh! Der er alligevel fejl i document.write(<%= strDinVariabel %>) så udskift du bare ;) ( Det skulle være document.write('<%= strDinVariabel %>') ... hehe )
Avatar billede a1a1 Novice
16. september 2002 - 15:34 #8
du skal jo bare have dimser om (')

du må så også replace dine " & '

med
\" \& \'

ala

aspvar = replace(aspvar, "\"", "\"")
aspvar = replace(aspvar, "&", "\&")
aspvar = replace(aspvar, "'", "\'")

er ikke helt sikker på den første...

men hvis du sætter din variabel i ' tegn vil " ikke være noget problem...

;)
Avatar billede frugaard Nybegynder
16. september 2002 - 15:37 #9
Cool, tak for det hurtige svar...

Jeg kunne bruge begge løsninger, så jeg deler pointene.

Thanx
Avatar billede mr.meincke Nybegynder
16. september 2002 - 15:38 #10
Hmm......Laver den oxo fejl hvis man skriver document.write('Ja & så var der dengang...') hehe ... Vidste jeg ikke...
Avatar billede a1a1 Novice
16. september 2002 - 15:43 #11
tik tak

;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester