2

問題の文字列:

'{"images":{"0":"<div style=\\"background:red;width:250px;height:250px;display:block;position:absolute;\\"></div>"}}'

一重引用符と二重引用符のさまざまな組み合わせを試しました。その文字列をChromeのjavascriptコンソールのJSON.parse()に挿入すると、正常に解析されます。

問題は、その文字列がサーバーから送信され、.xhr()リクエストを介して取得することです。そのステップが追加されるとすぐに、一重引用符と二重引用符の順列に関係なく、次のようなエラーが発生し続けます。

予期しないトークン'

そのような文字列をリクエストし、JSON.parseしてオブジェクトにするにはどうすればよいですか?

4

3 に答える 3

2

そのはず

var jsonstr = '{"images":{"0":"<div style=\"background:red;width:250px;height:250px;display:block;position:absolute;\"></div>"}}'

\\代わりにdoubleを使用します\

デバッグに役立つ優れたオンラインパーサーがあります。例: http: //json.parser.online.fr/

于 2012-06-18T10:44:39.713 に答える
2

引用符が文字列の一部である場合、それはjsonではありません。開始引用符と終了引用符を削除します。

また、二重引用符を二重にエスケープする理由はありません。

于 2012-06-18T11:02:19.330 に答える
0

\ "-二重引用符を使用せず、代わりに一重引用符を使用することを選択できます。このdivをhtmlでレンダリングすることを願っていますので、これでも問題ありません。

{
    "images": {
        "0": "<div style='background:red;width:250px;height:250px;display:block;position:absolute;'></div>"
    }
}
于 2012-06-18T10:49:22.313 に答える