2

HTML要素に含まれているJSONを解析しています。

このマークアップを検討してください。

<div id="1">
    {"string":["&quot;\u041a\u0410\u041a&quot;"]}
</div>

そしてこのスクリプト:

var a = $.parseJSON($("#1").html())

メソッドによって&quotsがsに変換されるため、エラー( "Uncaught SyntaxError:Unexpected token \")が返されます。"html()

この場合、jQueryがHTMLを解析しないようにするにはどうすればよいですか?$.text()どちらも機能しません。それとも私はひどく間違ったことをしていますか?

jsFiddle: http: //jsfiddle.net/VJvpY/6/

編集:エラーはコンソールにのみ表示されることに注意してください。

EDIT2: JSONを解析し、それを使用してJSオブジェクトを作成する必要があります。

4

3 に答える 3

0

ブラウザがjsonを解析しないように、jsonをテキストエリアに配置せずに配置することはできません(jQueryは引用符を台無しにするものではありません)。

ただし、「/」が原因でjsonをjqueryで解析できません。これを修正する方法がわかりません。それらをエスケープした後でも、それはまだ機能しません。

http://jsfiddle.net/VJvpY/3/

于 2012-06-26T16:01:13.677 に答える
0

あなたがやろうとしているのがJSONをテキストとして表示することである場合は?あなたはそれをプレで包むことができます

http://jsfiddle.net/VJvpY/5/

于 2012-06-26T16:20:38.687 に答える
0

結局&、JSONサーバー側のすべてをエスケープすることになりました。

于 2012-06-26T17:04:20.060 に答える