Javascript each-如何迭代JSON对象元素?

Javascript each-如何迭代JSON对象元素?,javascript,jquery,arrays,json,each,Javascript,Jquery,Arrays,Json,Each,我对JSON很陌生。我需要迭代来自AJAX的JSON响应,实际上,我正在以2,3,7,9,3的形式从db表中获取checkbox值。现在我被每个数字的迭代所困扰 如果您在FF控制台区域中运行以下代码,您将注意到它是针对每个数字而不是值循环的 请引导我 var srv = {"services":"26,29"}; jQuery.each( srv.services, function(i, v) { console.log( v ); }); 任何帮助都将不胜感激。 谢谢:)srv.

我对JSON很陌生。我需要迭代来自AJAX的JSON响应,实际上,我正在以2,3,7,9,3的形式从db表中获取checkbox值。现在我被每个数字的迭代所困扰

如果您在FF控制台区域中运行以下代码,您将注意到它是针对每个数字而不是值循环的

请引导我

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 );
});
工作演示:


您还可以让JSON服务返回数组而不是字符串,例如
{“services”:[26,29]}
。如果您使用符合JSON的正确方法进行编码,并且数据是数组,那么这将在服务器上自动完成。

srv.services
是由逗号分隔的值组成的字符串,因此
$。each()
无法正常工作。但是,您可以将其放入数组中:

var srv = {"services":"26,29"};

jQuery.each(srv.services.split(","), function(i, v) {
    console.log( v );
});
工作演示:


您还可以让JSON服务返回数组而不是字符串,例如
{“services”:[26,29]}
。如果您使用符合JSON的正确方法进行编码,并且数据是数组,则会在服务器上自动执行此操作。

不确定这是否是问题的答案,但鉴于上面的声明,请在迭代之前尝试拆分

var srv = {"services":"26,29"};

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 );
});

()

它不是有效的json数组,您的json数据应该如下所示:

var srv = {"services": ["26", "29"]};
..或者您可以使用js split函数拆分字符串数据:

jQuery.each(srv.services.split(","), function(i, v) {
    console.log( v );
});

它不是有效的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".split(",")};

jQuery.each( srv.services, function(i, v) {
    console.log( v );
});

您必须首先创建一个数组

var srv = {"services":"26,29".split(",")};

jQuery.each( srv.services, function(i, v) {
    console.log( v );
});

+感谢您建议在服务器级别更改数据格式。非常感谢,安迪。你给了我一个关于JSON的好概念。+1建议在服务器级别更改数据格式。非常感谢你,Andy。你给了我一个关于JSON的好概念。