[英]jQuery.each - How to iterate over JSON objects element?
我是玩JSON的新手。 我需要遍歷來自AJAX的JSON響應,實際上,我是從db表中以2,3,7,9,3的形式獲取復選框值。 現在我在每個數字上都堅持迭代。
如果在FF控制台區域中運行以下代碼,您會發現它正在針對每個數字NOT THE VALUE循環。
請指導我。
var srv = {"services":"26,29"};
jQuery.each( srv.services, function(i, v) {
console.log( v );
});
任何幫助,將不勝感激。 謝謝 :)
srv.services
是由逗號分隔的值的字符串,因此$.each()
無法正常工作。 您可以將它拆分()成一個數組:
var srv = {"services":"26,29"};
jQuery.each(srv.services.split(","), function(i, v) {
console.log( v );
});
工作演示: http : //jsfiddle.net/AndyE/veP4p/
您還可以讓JSON服務返回一個數組而不是一個字符串,例如{"services":[26, 29]}
。 如果您使用正確的JSON兼容方法進行編碼並且數據是數組,則將在服務器上自動為您完成此操作。
它不是有效的json數組,您的json數據應如下所示:
var srv = {"services": ["26", "29"]};
..或原因是,您可以使用js split函數拆分字符串數據:
jQuery.each(srv.services.split(","), function(i, v) {
console.log( v );
});
不確定這是否是您問題的答案,但是從上面給出聲明,請嘗試在上拆分,
然后再進行迭代:
var srv = {"services":"26,29"};
jQuery.each( srv.services.split(','), function(i, v) {
console.log( v );
});
( 演示 )
您必須先創建一個數組
var srv = {"services":"26,29".split(",")};
jQuery.each( srv.services, function(i, v) {
console.log( v );
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.