webForumDet fria alternativet

felsökning - oavslutad strängkonstant

ASP

15 svar · 1 136 visningar · startad av Mira

Medlem sedan maj 2001966 inlägg
Frågan#1

Har laddat hem ett asp-script som har något scriptfel.
Felmeddelandet säger bara "Oavslutad strängkonstant" och anger vilken rad - men raderna stämmer ju inte.
Hur räknar man fram rätt rad?

Logga in med 'admin' och 'admin':
http://xist.dk/script/test/admin.asp

Skriver man fel uppgifter där och sen loggar in rätt så står det "Fel lösenord" längst ner.

(ps. jag vet att Gruvsjö har ett eget forum för frågor, men det är väldigt trögt med svar där)

Medlem sedan dec. 19996 721 inlägg
#2

Det är inte ett ASP-fel, utan ett javascript-fel som kommer från denna snutt

onClick="return confirm('Vill du verkligen ta bort "Är du klar med julg...?');>

Citationstecknet före "Är" sabbar.

Medlem sedan maj 2001966 inlägg
#3

Ok, man får inte använda "-tecknet när man lägger in text?
Finns det fler tecken som stör?
Har nämligen testat att rensa databasen och lagt in egna saker, men får ändå scriptfel.
T.ex [-tecknet använder jag.
Går det isåfall att fixa i koden?

Medlem sedan maj 2001966 inlägg
#4

Testa lägg till ett skämt så blir det ett fel (även utan "-tecken eller andra konstiga tecken).

EDIT:
Äsch, ingen kontakt med servern just nu...

Medlem sedan juni 200032 967 inlägg
#5

Eftersom du använder " som strängavgränsare i html-koden så avslutar du ju attributet onclick med ditt citationstecken. Det som browsern försöker tolka är alltså:

onClick=[b]"return confirm('Vill du verkligen ta bort "[/b]>

Alltså blir javascript-syntaxen felaktig.

Problemet kan avhjälpas genom att koda om " till ".

onClick="return confirm('Vill du verkligen ta bort "Är du klar med julg...?');">

I det här fallet kan du inte heller rakt av använda apostrofer, eftersom du använder det som strängavgränsare i javascript-koden i ditt onclick-event. Escapea med backslash.

mvh

Medlem sedan juni 200032 967 inlägg
#6

Var menar du att vi ska försöka lägga till skämt? Får 404 på länken i första inlägget.

Medlem sedan juni 200032 967 inlägg
#7

Mira skrev:

Testa lägg till ett skämt så blir det ett fel (även utan "-tecken eller andra konstiga tecken).

Nu har jag testat.

Sannolikt beror det på att det är en radbrytning (dvs ett konstigt tecken ;) ) i någon / några av rubrikerna.

Medlem sedan maj 2001966 inlägg
#8

Äsch, det verkar inte spela nån roll vad innehållet är.
Om det inte är så att just ordet "test" är bannat...

Har rensat allt utom 2 test - där det bara står test.
Fel i alla fall.

Medlem sedan juni 200032 967 inlägg
#9

Mira skrev:

Äsch, det verkar inte spela nån roll vad innehållet är.
Om det inte är så att just ordet "test" är bannat...

Har rensat allt utom 2 test - där det bara står test.
Fel i alla fall.

Det är radbrytningar i texten. Ta bort dem så borde du få bort felet.

Medlem sedan maj 2001966 inlägg
#10

Sorry, missade att du skrev det (såg bara ordet "konstiga tecken").
Det går att fixa med replace hoppas jag?

Medlem sedan juni 200032 967 inlägg
#11

Japp, det går att fixa med replace. :-)

Medlem sedan maj 2001966 inlägg
#12

Har du lust att förklara var jag ska lägga den...?

Medlem sedan juni 200032 967 inlägg
#13

Hur skriver du ut länken idag?

Medlem sedan maj 2001966 inlägg
#14

Det som står på startsidan, under Skämt och linjen, skrivs så här:
(Radbryten finns inte i den riktiga koden)

<%If Len(RecSet("info")) > 40 Then%><%=Left(RecSet("info"),40)%>...<%Else%><%=RecSet("info")%><%End If%></td>
    <td align="right" width="100"><a href="admin.asp?do=inne&action=change&id=<%=RecSet("id")%>">Ändra</a> &nbsp; 
<a href="admin.asp?do=inne&action=delete&id=<%=RecSet("id")%>" 
onClick="return confirm('Vill du verkligen ta bort <%=Left(RecSet("info"),20)%>...?');">Ta bort</a>
Medlem sedan dec. 19996 721 inlägg
#15
<%If Len(RecSet("info")) > 40 Then%><%=Left(RecSet("info"),40)%>...<%Else%><%=RecSet("info")%><%End If%></td>
    <td align="right" width="100"><a href="admin.asp?do=inne&action=change&id=<%=RecSet("id")%>">Ändra</a> &nbsp; 
<a href="admin.asp?do=inne&action=delete&id=<%=RecSet("id")%>" 
onClick="return confirm('Vill du verkligen ta bort <%=Server.HtmlEncode(Left(Replace(RecSet("info"),vbCrLf," "),20))%>...?');">Ta bort</a>
Medlem sedan maj 2001966 inlägg
#16

Tack, funkar toppen!

262 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)