2009-08-19 3 views
0

Ich habe ein Problem mit einer Seite. Wenn ich eine TextArea oder Textbox mit ihrem Wert (serverseitig gesetzt) ​​z. "Alarm ('Hallo');" Dieses Skript wird beim Laden der Seite ausgeführt.Wie kann man verhindern, dass eine Webseite Javascript ausführt, das sich in einem Textbereich befindet oder als Eingabewert (Text eingeben)?

Nun, warum codierst du die Zeichenkette nicht, bevor du sie als Wert für die Textbox setzt, die du fragst? Dann werden Sonderzeichen wie åäö auch verschlüsselt, und das ist eine Lösung, die für mich funktioniert.

Jeder hat eine Ahnung, wie man das löst?

+3

Wenn Ihre Seite Textboxwerte als Skripte auswertet, haben Sie ein schwerwiegendes Problem. Sie sollten hier einen Teil Ihres Codes veröffentlichen, um das Problem besser zu diagnostizieren. aussehen – Sampson

+0

Dies ist, was die Quelle und es öffnet sich ein Hallo messagebox auf das Laden der Seite nach oben:

+0

Ich würde das auch lösen können. Ich mache einige UI-Tests mit Selenium WebDriver, und wenn Sie versuchen, SendKeys zu einem Textfeld zu senden, das ein Javascript hat, hängt es einfach .... – Cas

Antwort

0

Ich bin mir nicht sicher, ob ich richtig verstehe, aber ich nehme an, dass Sie den Textarea-Inhalt als HTML ausgeben, wenn Sie das Formular abschicken? Wenn Sie PHP verwenden, führen Sie einfach den Textarea-Inhalt durch http://www.php.net/htmlspecialchars, um das Problem zu beheben, während die Zeichen erhalten, die Sie nicht verlieren möchten.

Andere Skriptsprachen sollten similare Funktionen haben, oder im schlimmsten Fall sollte das Schreiben eigener Probleme kein Problem darstellen.

1

Entschuldigung für alle Bequemlichkeit, löste ich es, das Problem war, dass ich auf den Textkasten konzentrierte, aber das Problem war, dass der gleiche Text auf ein verstecktes div angewendet wurde, so dass Skript das ausführende war. Na gut danke trotzdem.

Verwandte Themen