0

私はajaxを使用してサーバーからjson文字列を取得し、evalを使用してそれをオブジェクトに変換しています。jsonデータを反復処理すると、キーのみが取得されます。キーの値を取得するにはどうすればよいですか。これは私が持っているものです:

var jsonobj = eval('(' + xmlhttp.responseText + ')');

for (i in jsonobj){
     alert(i);
}

キーに警告します。キーの値を取得するにはどうすればよいですか?

4

4 に答える 4

3

サブスクリプト表記を使用します。jsonobj[i]

于 2012-05-31T15:04:09.080 に答える
3

これを試して:

var jsonobj = eval('(' + xmlhttp.responseText + ')');
var value;

for (i in jsonobj){
     value = jsonobj[i];
}
于 2012-05-31T15:04:15.973 に答える
3

サーバーが JSON を返す場合、eval を使用する必要はありません。を指定するだけでdataType、jQuery が自動的に結果を解析します。

$.ajax({
    url: '/script',
    type: 'POST',
    dataType: 'json',
    success: function(result) {
        for (var key in result) {
            if (result.hasOwnProperty(key)) {
                alert('key: ' + key + ', value: ' + result[key]);
            }
        }
    }
});
于 2012-05-31T15:05:39.977 に答える
2
var jsonobj = eval('(' + xmlhttp.responseText + ')');

for (i in jsonobj){
    alert(jsonobj[i]);
}
于 2012-05-31T15:05:51.780 に答える