Går det att skriva ut innehållet ur en textarea (som sparas i en databas) i ett javascript alert ?
Antar att man måste erstätta tecken för att det ska fungera?!
<%=rs("history")%>
<% varHistory = rs("history") %>
<a href="#" OnClick="javascript:alert('<%=varHistory%>')"><img src="ico_history.gif" border=0></a>
Får här felmeddelandet...
Unterminatde string constant
:(
@ndersMedlem sedan juni 200032 969 inlägg Du måste escapea eventuella apostrofer. Escape i javascript är backslash. Alltså:
<a href="#" onclick="alert('<%=replace(varHistory, "'", "\\'")%>')"><img src="ico_history.gif" border=0></a>
(du behöver inte ha "javascript:" i onclick-attributet).
Du måste ersätta:
' med \'
" med &quot;
\ med \\
radbrytning (vbclfr eller något i asp tror jag) med <br /> allt med ett mellanslag
Det kan hända att asp automatiskt tolkar vissa av sakerna där som escape'ade men då får du se till att det som står till vänster verkligen ersätts med det som står till höger.
Denna funktion fungerar för mig. Hur ser den ut för er som kan ?
<% function funAlertFormat(string)
if isnull(string) = true then string = " " 'Replace klarar inte tomma strängar
string = replace(string, "'", "’")
string = replace(string,vbcrlf,"\n")
funAlertFormat = string
end function %>
Men jag har fortfarande problem med tecken -> "
string = replace(string, """, """)
Fungerar inte för mig... Annars så ser det bra ut.
@ndersMedlem sedan juni 200032 969 inlägg Kör en Server.HTMLEncode också då.
<% function funAlertFormat(string)
if isnull(string) = true then string = " " 'Replace klarar inte tomma strängar
string = replace(string, "'", "’")
string = replace(string,vbcrlf,"\n")
string = replace(string,"\","\\")
string = replace(string,""","&quot;")
funAlertFormat = string
end function %>
<% function funAlertFormat(string)
if isnull(string) = true then string = " " 'Replace klarar inte tomma strängar
string = replace(string, "'", "’")
string = replace(string,vbcrlf,"\n")
string = replace(string, """", """)
funAlertFormat = string
end function %>
Nu är det bara tecken -> \ som jag inte får använda. Kan man lösa det?
Snabba svar. Det uppskattas. Nu börjar det nog bli klart.
<% function funAlertFormat(string)
if isnull(string) = true then string = " " 'Replace klarar inte tomma strängar
string = replace(string, "'", "’") 'Hanterar tecken -> '
string = replace(string, """", """) 'Hanterar tecken -> "
string = replace(string,"\","\\") 'Hanterar tecken -> \
string = replace(string,vbcrlf,"\n") 'Hanterar tecken -> radbrytning
funAlertFormat = string
end function %>
Problemet jag hade med \ var att raderna
string = replace(string,"\","\\")
string = replace(string,vbcrlf,"\n")
inte fick vara i omvänd ordning.
Tack för hjälpen alla!
En sak här: När du postade koden så ersattes & quot; med ". Se upp om du skulle hamna i situationen att du ska kopiera och klistra in koden. (Från ditt inlägg)
Oj... så sant.
FR33 P0RN (link above) Is the sexiest page around i've seen in a while ;)