1

私はこのJSON文字列を持っています:

{"image":[
    {"img":"_files\/image\/images\/firstimage.jpg","alt":"firstimage alt text"},
    {"img":"secondimage.jpg","alt":"secondimage alt text"}
]} 

JSON文字列はテキストエリアから選択され、変数'content'に格納されます

var content = $("textarea").val();

私は要素にアクセスしようとしています:

alert(content["image"][0]["img"]);

しかし、エラーが発生します:

TypeError:content.imageが未定義です。

最終的には、要素を変更および追加してJSON文字列を操作したいと思います。

私はここで何が間違っているのですか?

アップデート

$ .parseJSONがその仕事をしました:

var content = $.parseJSON($("textarea").val());
4

2 に答える 2

5

テキストエリアからJSON文字列を選択する場合は、使用する前に、まずJavaScriptオブジェクトに変換する必要があります。使用、例えば$.parseJSON()

var content = $.parseJSON( $("textarea").val() );

または、これを行うためのネイティブJavaScript関数JSON.parse()ほとんどのブラウザにあります。

var content = JSON.parse( $("textarea").val() );
于 2013-01-20T10:16:17.297 に答える
3

JSONに直接解析するのではなく、最初に解析する必要があります

var content = JSON.parse($("textarea").val());

これにより、一般的なJSON操作を使用できるようになります

JSON検索の例は次のようになります

content.image[0]['alt']
于 2013-01-20T10:18:49.893 に答える