2013-11-20 45 views
0

我有一個返回類別列表的ajax調用。我希望從列表中提取每個名稱。 我的AJAX的樣子:從JSON數據中提取特定項目

$(document).ready(function() { 
      $.ajax({ 
       type: "GET", 
       url: "/Client/GetCategoryList", 
       contentType: "application/json; charset=utf-8", 
       dataType: "json", 
       success: function (data) { 
        alert(data); 
       }, 
       error: function() { alert("Error"); } 
      }); 
     }); 

如果我使用「數據類型:‘JSON’,」則警示,我發現像

[object Object],[object Object],[object Object],[object Object],[object Object] 

的結果,如果我評論了「數據類型:」 JSON」,那麼結果就像

[{"iID":56,"strName":"as","strDescription":"as","strImage":""},{"iID":24,"strName":"laptop","strDescription":"laptops","strImage":"uploads/2dell.jpg"}, {"iID":14,"strName":"mobile","strDescription":"handsets","strImage":"uploads/14sams.jpeg"},{"iID":46,"strName":"sds","strDescription":"dsd","strImage":"uploads/Category/46bg.jpg"}] 

我只是想從數據的超鏈接中提取類別名稱或則strName。任何幫助將提前高度appreciable.Thanks。

+0

你的腳本返回5個對象的數組。你需要迭代它們並獲得每個的'strName'屬性。 – Barmar

+0

試試這個你可以得到你的答案http://stackoverflow.com/questions/4317112/how-to-access-particular-fields-from-json-content-by-using-php – railsbox

回答

1
var names = $.map(data, function(v){ 
    return v.strName; 
}); 
+1

感謝您的快速響應。有效。 – rns

+0

@rns Np!我以爲你可以找出這個超鏈接部分;) – Johan

-1

您可以在您的ajax調用的成功函數中使用data.strName提取「strName」;

對不起,我沒有看到它是一個數組。你可以嘗試的getJSON方法,如:

$.getJSON(url, param ,function(data) { //url - return json page 
    $.each(data, function() { 
     alert(this.strName); 
    }); 
}; 
+0

'data'是一個數組,將無法工作。 – Barmar

+0

我已經嘗試過,但它然後警告「未定義」。 – rns

1

既然你返回一個數組,你需要循環的:

success: function (data) { 
     $.each(data, function(i, el) { 
      console.log(el.strName); 
     }); 
    }, 
+0

謝謝..它的工作。 – rns