22. marts 2005 - 10:29Der er
18 kommentarer og 3 løsninger
HTML-kode i variabel giver fejl?
Jeg har et script hvor jeg sender noget html-kode der bliver genereret af noget ASP-kode, videre i en javascript variabel. Der er bare noget der går galt, så scriptet ikke forstår variablen der hedder HTMLcode. Kan forestille mig det måske er noget med "-tegnene eller '-tegnene, men hvordan kommer jeg udenom dette problem?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Det kan jeg ikke rigtig se, men umiddelbart er det i den linje hvor der står response.Write("var html = ' & HTMLcode & ';"), for hvis jeg bare sætter noget almindelig tekst ind istedet for " & HTMLcode & ", så virker det fint nok.
Det burde den ikke. Problemet er jo at du har ' tegnet i HTMLcode, og resultatet derfor bliver noget ala: var html = '... <input type="button" onClick="'test.asp'">...';
Det kan JavaScript naturlig ikke forstå, da der er ' tegn i, derfor escaper du ' tegnene med /' lige som du bruger "" til at escape " tegnet i ASP.
Det er ASP kode for linjeskift. Hvis du ikke har den ser koden sådan ud i browseren (kildekode):
<script type="text/javascript">var url = ''; var html = '.....';doSomething(url, html);</script>
istedet for: <script type="text/javascript"> var url = ''; var html = '.....'; doSomething(url, html); </script>
Som er meget mere læse/brugervenligt, når man skal finde fejl. Du kan jo prøve at fjerne dem og tjekke kildekoden i browseren, også se hvordan det ser ud. Det burde stadig virke uden vbCtrl...
moejensen >> Der er heller ikke ' i det udsnit af koden melted har vist, men det står som en bemærkning i hans post 10:31:26. Jeg så det heller ikke først :o)
Hmm... hvad gør jeg så hvis jeg har et link til en website hvor der er /-tegn i URL'en? Så escaper den der hvor /tegnet er... hvordan kommer man så udenom det?
Mener det er dobbelt /. Og den replace skal selvfølgelig laves inden ' bliver udskiftet med /', så de ikke bliver ændret:
replace(replace(HTMLcode,"/","//"),"'","/'")
Synes godt om
Ny brugerNybegynder
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.