2009-08-07 13 views
2

jsonオブジェクトを使用して異なるビットのコンテンツを格納しています。そのうちの1つにjavascriptを含めることができます& html関連コンテンツセミコロン、タグなど)を使用することができます。私が使用していますこの問題を回避するには:JSP/Javascript/JQuery:変数にhtml/javascriptコンテンツを保存する+テキストエリアに書き込む

"コンテンツ": "<%は= StringEscapeUtils.escapeHtml(StringEscapeUtils.escapeJavaScript(コンテンツ))%>"

(私は、サーバー側の技術としてJSPを使用していますページがロードされているときにインラインで生成されたJSONのビットです)

これは、ページを壊す可能性のある文字をエスケープするのにうまくいきますが、この変数の内容をテキストエリアに取得する必要があります。

$( 'textarea')。val(obj.content);

私は何を避けるためにしようとしているが、この時点で起こるダブルエンコーディングです:

  • オリジナルコンテンツがある:<script>alert("hello world");</script>
  • コンテンツ変数が成り立つ:&lt;script&gt;alert(&quot;hello world&quot;);&lt;/script&gt;
  • 内のテキストをTEXTAREAは読む:&lt;script&gt;alert(&quot;hello world&quot;);&lt;/script&gt;それは<script>alert("hello world");</script>

この作品を作る任意の方法を読む必要があるとき?

答えて

0

ただエスケープで入力してください。私は$( 'textarea')を意味します。val(unescape(obj.content));

+0

unescape()はコンテンツに影響しません。 – Dan

+0

はい、あなたはrigth :(申し訳ありませんが、手動でhtmpエンティティをデコードする必要があります。 –

0

代わりにStringEscapeUtils.escapeJavaScriptを使用できますか? JSONが<script>ブロックにある場合、ページの破損を防ぐのに十分である必要があり、デコードは必要ありません。

+0

これは元のとおりですが、コンテンツにエンコードされていない ""要素が存在するため、JSONを含む

  • 11. テキストエリアのデータをtxtファイルに書き込む方法
  • 12. Javascript、txtファイルに書き込むユニコードとして保存
  • 13. 最後のN行を保存するようにファイルに書き込む
  • 14. Django - データベースに書き込む前に一時/プレビューモデルを保存する場所?
  • 15. PHP変数を含むHTMLをPDFファイルに書き込む?
  • 16. forループを反復するファイルに変数を書き込む
  • 17. 変数を書き込むときにwfile.writeがエラーを返す
  • 18. drawstring()で変数を書き込む
  • 19. VBAで変数を書き込む
  • 20. AlertDialogから変数を書き込む
  • 21. データフレームを保存する前にテキストを書き込む方法は?
  • 22. ループ変数に応じて異なるファイルに書き込む
  • 23. Python:開いているストリームにコンテンツを書き込む
  • 24. 存在関数を再帰的に正しく書き込む
  • 25. 複数の変数を1つのCSV行に書き込む
  • 26. 既に存在するテキストファイルにテキストを書き込むVB.NET
  • 27. openpyxlで古いコンテンツを上書きせずにExcelファイルに書き込む
  • 28. テストフラグメント中にログに変数を書き込むJMeter
  • 29. JTEXTFieldを保存して書き込む方法
  • 30. Android Unity c#:UnauthorizedAccessExceptionゲームデータを保存して書き込む