Javascript 元素不是使用为jquery中的每个循环定义的
我想通过jquery使用foreach循环来获取元素中的所有值。但我也有错误 元素未定义 这是密码Javascript 元素不是使用为jquery中的每个循环定义的,javascript,jquery,foreach,Javascript,Jquery,Foreach,我想通过jquery使用foreach循环来获取元素中的所有值。但我也有错误 元素未定义 这是密码 if (data.length > 0) { $.each(data, function (index, element) { Items += element[0] + ","; element; }); Items = Items.substr(0, Items.leng
if (data.length > 0) {
$.each(data, function (index, element) {
Items += element[0] + ",";
element;
});
Items = Items.substr(0, Items.length - 1);
var Values = { "Items": Items, "Element": element };
NEIQC_Service.ConfirmApprovalML(Values).then(function () {
});
}
请提出问题所在
更新
在console.logelement之后
我在元素中获得数据,如下所示
5[Delton Infra p Limited-3964753310744,室内小区无DGS/室内小区无DGS,1,0]这是因为在回调函数中,第一个参数是值,第二个是索引,也是
您需要更改Items+=元素[0]+,;至项目+=元素+,;由于元素不是数组,所以它将是字符串
尝试如下更改代码:
$.each(data, function (element, index) {
Items += element + ",";
element;
});
请试试这个
var-elem;
$.each[52,97],函数索引,元素{
元素=元素;
};
console.logelem;
问题是元素超出了each方法的作用域,因此元素实际上没有在var值={Items:Items,element:element};处定义;。为了避免这种情况,您可以将元素分配给另一个变量,该变量的作用域可从each方法外部获得:
无法工作,获取错误为Items=undefined是否可以同时发布数据循环参数是问题所在。第一个应该是价值。第二个应该是indexoops。循环是正确的。但是你的元素值应该分配给一个公共变量,我已经测试过了,运行良好。你能指出这条线吗?
data.map(element=>{
Items += element[0] + ",";
console.log(element) // Check it has value or not
element;
}
)
if (data.length > 0) {
let element2 ;
$.each(data, function (index, element) {
Items += element + ",";
element2 = element;
});
Items = Items.substr(0, Items.length - 1);
var Values = { "Items": Items, "Element": element2 };
NEIQC_Service.ConfirmApprovalML(Values).then(function () {
});
}