2009-08-19 13 views
0

私はページに問題があります。もし私がその値(serversideに設定されている)を持つtextareaまたはtextboxを持っていれば、例えば。 "alert( 'hello');"そのスクリプトはページのロード時に実行されます。テキストエリア内または値(入力テキスト)の中にあるjavascriptの実行をウェブページから停止するにはどうすればよいですか?

文字列をエンコードする前に、文字列を値として設定する必要はありません。 åäöのような特殊文字もエンコードされ、私のために働く解決法です。

誰かがこれを解決する手がかりを持っていますか?

+3

あなたのページがテキストボックスの値をスクリプトとして評価している場合は、深刻な問題があります。問題をより正確に診断するには、ここにコードの一部を投稿する必要があります。 – Sampson

+0

これはソースがどのように見えるかであり、それはページの読み込み時に、ハローメッセージボックスポップアップ表示: <入力名=「TB」値=」<スクリプト>警告( 『こんにちは』); < /スクリプトを> 『MAXLENGTH =』 50 "id =" id "class =" textbox "style =" width:100%; " type = "text"> –

+0

私もこれを解決する方法を知っています。私はいくつかのUIテストをSelenium WebDriverを使用しています.JavaScriptを持つテキストフィールドにSendKeysを送信しようとすると、ちょうどハングします。 – Cas

答えて

0

私が正しく理解しているかどうかわかりませんが、フォーム提出時にテキストエリアの内容をHTMLとして出力していますか? PHPを使用している場合は、テキストエリアの内容をhttp://www.php.net/htmlspecialcharsまで実行して、失いたくない文字を保存して問題を解決してください。

その他のスクリプト言語には類似機能が含まれている必要があります。または、最悪の場合、独自のスクリプトを作成しても問題はありません。

1

申し訳ありませんが、私はそれを解決しましたが、問題はテキストボックスに焦点を当てていましたが、同じテキストが隠れたdivに適用されてスクリプトが実行されたという問題でした。とにかく、どうもありがとう。

関連する問題