簡體   English   中英

使用jQuery循環並獲取JSON數組的鍵/值對

[英]Loop and get key/value pair for JSON array using jQuery

我想循環一個JSON數組並顯示鍵和值。

它應該是以下帖子的簡化版本,但我似乎沒有正確的語法: jQuery'each'循環與JSON數組

我還看到了使用jQuery在JSON中獲取鍵/值對中鍵的名稱? ,但它似乎也是一個簡單活動的代碼。

這說明了我正在尋找的東西(但它不起作用):

var result = '{"FirstName":"John","LastName":"Doe","Email":"johndoe@johndoe.com","Phone":"123 dead drive"}';
$.each(result, function(k, v) {
             //display the key and value pair
            alert(k + ' is ' + v);
        });

沒有強制性的jQuery要求,但它是可用的。 如果它減少了所需的代碼,我也可以重構JSON。

您有一個表示JSON序列化JavaScript對象的字符串。 在能夠遍歷其屬性之前,需要將其反序列化為JavaScript對象。 否則,您將循環遍歷此字符串的每個單獨字符。

var resultJSON = '{"FirstName":"John","LastName":"Doe","Email":"johndoe@johndoe.com","Phone":"123 dead drive"}';
var result = $.parseJSON(resultJSON);
$.each(result, function(k, v) {
    //display the key and value pair
    alert(k + ' is ' + v);
});

現場演示

var obj = $.parseJSON(result); for (var prop in obj) { alert(prop + " is " + obj[prop]); }

如果是這樣的一個數組,您可以直接獲取值:

var resultJSON = '{"FirstName":"John","LastName":"Doe","Email":"johndoe@johndoe.com","Phone":"123 dead drive"}';
var result = $.parseJSON(resultJSON);
result['FirstName']; // return 'John'
result['LastName'];  // return ''Doe'
result['Email']; // return 'johndoe@johndoe.com'
result['Phone'];  // return '123'

以下內容適用於JSON返回的字符串。 它也適用於關聯數據數組。

for (var key in data)
     alert(key + ' is ' + data[key]);

解析JSON字符串,您可以遍歷鍵。

 var resultJSON = '{"FirstName":"John","LastName":"Doe","Email":"johndoe@johndoe.com","Phone":"123 dead drive"}'; var data = JSON.parse(resultJSON); for (var key in data) { //console.log(key + ' : ' + data[key]); alert(key + ' --> ' + data[key]); } 

解決此問題的最佳和完美解決方案:

我嘗試了jQuery與Ajax成功響應,但它不起作用所以我發明了自己的,最后它的工作原理!

單擊此處查看完整解決方案

var rs = '{"test" : "Got it perfect!","message" : "Got it!"}';
eval("var toObject = "+ rs + ";");
alert(toObject.message);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM