2

「投稿」を作成する AJAX リクエストがあり、投稿が成功したら、HTML を DOM に挿入する必要があります。現在、成功/エラーの詳細を示す JSON 配列を返しています。成功した場合は、応答に投稿の HTML も含めます。そこで、応答を JSON として解析し、JSON 配列のキーを一連の HTML コードに設定します。

当然のことながら、HTML コードは JSON 配列を壊しています。それを回避するにはどうすればよいでしょうか (または、これを行うためのより良い方法はありますか?)。次のような JSON 配列を含む AJAX 応答を取得します。

[{response:"success"},{html:'<div class="this is going to break...

ありがとう!

4

2 に答える 2

1

おそらく JavaScript で慣れ親しんだこととは反対に、JSON では ' で文字列を開始することはできません。厳密には " です。一重引用符は、JSON を JavaScript に渡すときに機能します。XHTML の改行を入れたいときに機能するのと同じように機能します<br>

したがって、" を使用して HTML 文字列を開き、引用符を \" でサニタイズします。

json.orgには、サニタイズする必要がある WRT に関する詳細情報があります。特殊文字のリストは長くはありませんが、Anurag がコメントで提案しているようなライブラリを使用するのがおそらく最善です。

于 2010-01-18T02:13:59.190 に答える