这是我的第一个问题!使用Ajax的新手,并遇到了一个问题,也许有人可能会发现我做错了什么。
var featuredList;
$.ajax({
url: "myurl",
type: 'GET',
success: function(result){
featuredList = JSON.stringify(result);
alert(result);
$.each( result, function( key, value ) {
alert('not working');
});
},
error: function(){alert('error');}
});
我之前走过这条路没有任何问题,这次我无法进入循环。警报(结果)正在返回我的数据。
谢谢!
答案 0 :(得分:1)
<强>您好强>,
希望这可以帮助您处理从AJAX请求收到的JSON数据,请尝试以下代码:
jQuery.ajax({
url:'myurl',
dataType: "json",
data:{
classId:'C001'
},
type: "GET",
success: function(data) {
for (var j=0; j < data.length; j++) {
//syntax to get value for given key
//data[j].yourKey
var userId = data[j].userId;
var name = data[j].name;
var address = data[j].address;
}
}
});
谢谢,
〜CHANDAN
答案 1 :(得分:0)
根据你的代码尝试这样做:它应该工作
var data = JSON.parse(result);//here result should be json encoded data
$.each( data, function( key, value ) {
alert(value);
});
答案 2 :(得分:0)
使用jQuery promises,为您提供更多语义和可读代码
var featuredList;
$.getJSON("myurl", {"optional": "data"})
.done(function(data){
// successful ajax query
$.each( data, function( key, value ) {
// do whatever you want with your iterated data.
});
});
.fail(function(){
// catch errors on ajax query
});
答案 3 :(得分:0)
我是这样做的
$.getJSON('url',
function(dataList) { // on server side I do the json_encode of the response data
if(dataList !== null) {
$.each(dataList, function(index, objList ) {
// rest of code here
});
}
});
希望这也适合你。
答案 4 :(得分:0)
function getArray(){
return $.getJSON('url');
}
var gdata = [];
getArray().then(function(json) {
$.each(json, function(key, val) {
gdata[key] = val ;
});
console.log(gdata);
我有同样的问题需要2天才能得到解决方案。 您必须解析promise并返回json对象才能访问该值。
答案 5 :(得分:0)
您可以使用开源项目http://www.jinqJs.com
轻松完成此操作/* For Async Call */
var result = null;
jinqJs().from('http://.....', function(self){
result = self.select();
});
/* For Sync Call */
var result = jinqJs().from('http://....').select();
答案 6 :(得分:0)
你也可以使用$ .Json来获得你的解决方案,这是一个例子
$.getJSON('questions.json', function (data) {
$.each(data,function(index,item){
console.log(item.yourItem); // here you can get your data
}
}
&#13;
希望它可以帮到你,我完全不确定你的要求与否,但我已尽力解决它。
答案 7 :(得分:-1)
这将起作用,因为ajax调用的结果是一个字符串。
$.each($.parseJSON(result), function( key, value ) {
alert('This will work');
});