这是我的json
[
"59191", "TypeAV - Canada", "Available",
"422129", "TypeAA - Italy", "Available",
"959191", "TypeBB - USA", "N/A",
"6D968C", "TypeAV - Canada", "Available"
]
Run Code Online (Sandbox Code Playgroud)
和js
$.ajax({url: 'test.json'}).done(function(data) {
$.each(myArr, function () {
data.forEach(function (line) {
//do something
});
})
})
Run Code Online (Sandbox Code Playgroud)
我得到了Uncaught TypeError: data.forEach is not a function
.如何解决这个问题?
data
显然不是一个阵列.$.ajax
如果服务器发送响应,它将自动将响应解析为JSON Content-type: application/json
,但它不能这样做.由于jQuery不知道响应应该被解析为JSON,它只是将字符串响应传递给回调函数.
所以你需要告诉JQuery它是JSON并且需要被解析.最简单的方法是使用$.getJSON
而不是$.ajax
,因为你没有传递任何复杂的选项$.ajax
.
$.getJSON('test.json', function(data) {
...
});
Run Code Online (Sandbox Code Playgroud)
你也可以使用dataType:
`$ .ajax选项.
$.ajax({
url: "test.json",
dataType: "json"
}, function(data) {
...
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
13608 次 |
最近记录: |