Avatar billede larsp Nybegynder
08. januar 2001 - 17:19 Der er 5 kommentarer og
1 løsning

Indsæt javascript i en div

Jeg bruger div\'s i min kode, som jeg opdaterer med javascript. Det går fint med HTML, men når jeg forsøger at indsætte javascript får jeg en runtime fejl. Det skyldes selvfølgelig, at den yderste javascript funktion tror den er slut når den møder et \' i den inderste funktion:
document.all.Results.innerHTML=\'<Table><tr><td><a href=\"#\" onclick=\"openWindow(\'Edit.asp\')\">Open window</a></td></tr></table>\'

Findes der en metode til at undgå dette problem, eller konvertere pingerne?

Lars
Avatar billede jakoba Nybegynder
08. januar 2001 - 17:21 #1
du kan escape det der skal betragtes som tekst imes du skriver det:
dvs:

document.write(\"en streng med et \\\"-tegn i\");

mvh JakobA
Avatar billede jakoba Nybegynder
08. januar 2001 - 17:23 #2
imes == imens
Avatar billede jumper Nybegynder
08. januar 2001 - 17:23 #3
Escape dine \' tegn med et \\ som i :

document.all.Results.innerHTML=\'<Table><tr><td><a href=\"#\" onclick=\"openWindow(\\\'Edit.asp\\\')\">Open window</a></td></tr></table>\'

/Thor
Avatar billede larsp Nybegynder
08. januar 2001 - 17:51 #4
Det virker bedre, men ikke helt. Den yderste funktion får nu lov til at gøre sit job færdigt, den skriver koden i div\'en. Den inderste virker dog ikke da den ikke åbenbart ikke forstår:
onclick=\"openWindow(\\\'Edit.asp\\\')
Jeg tror at escapede tegn kun kan bruges mellem de to pinger:
onclick=\"openWindow(\'Lars\\\' kode\')

Andre forslag?
Avatar billede jakoba Nybegynder
08. januar 2001 - 18:59 #5
Så kommer du vel til at gøre det den tunge vej. dvs ved at dele din streng op i mindre stykker der bagefter sættes sammen:

var tableStreng = \'<Table><tr><td><a href=\"#\"  onclick=\"openWindow(\'
                      + \"\'Edit.asp\'\"
                      + \')\">Open window</a></td></tr></table>\';
document.all.Results.innerHTML=tableStreng;

NB: citationstegnene omkring Edit.asp er \"-tegn yderst og \'-tegn inderst.

mvh JakobA
Avatar billede larsp Nybegynder
10. januar 2001 - 15:41 #6
Tak for hjælpen begge to
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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