...Uncaught TypeError: Cannot use 'in' operator to search for“length”in { json数据 }
·
1.控制台打印返回的数据是:
[Web浏览器] "{d:[{"col":7,"row":7, "size_x":5,"size_y":5,"id":"1","text":"区域1"},
{"col":7,"row":7, "size_x":5,"size_y":5,"id":"2","text":"区域2"},
{"col":7,"row":7, "size_x":5,"size_y":5,"id":"12","text":"A12"}]
}"
2.这是最终调试成功的代码板块:
3.调试经验:
(1).webservice返回的数据到前台页面解析时要写成:
success: function(data) {
var 解析最终数据= data.d;
}
否则将得不到想要的解析数据
(2).解析时若是遇到
...Uncaught TypeError: Cannot use 'in' operator to search for“length”in { array }
解决方法:
JSON字符串转换为JavaScript对象。要修复它,通过标准JSON.parse()或jQuery 的 $.parseJSON 将其转换为JavaScript对象。
之前无法解析显示的代码:
$.each(serialization, function() {
gridster.add_widget('<li>' + this.text + '</li>',
this.size_x, this.size_y, this.col, this.row, "", "", this.id);
});
最终修改完成调试的代码:
$.each(JSON.parse(serialization), function() {
gridster.add_widget('<li>' + this.text + '</li>', this.size_x,
this.size_y, this.col, this.row, "", "", this.id);
});
(3)
访问json格式的数据或者json文件时,就不需要JSON.parse一下,否则就会出现:”Uncaught SyntaxError: Unexpected token u” 此类错误,例如JSON.parse,JSON.parse在传参数时,未定义的情况下会出现该异常 。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)