我正在使用ajax将这个对象数组返回给我。我正在尝试检查用户电子邮件是否与用户给出的电子邮件匹配,还要查看id是否为空
Array ( [success] => 1
[data] => Array (
[0] => Array ( [id] => 1 [firstName] => Juan [lastName] => Laxague [fullName] => Juan Manuel Laxague [email] => julx@iloud.com )
[1] => Array ( [id] => 3 [firstName] => test [lastName] => test123 [fullName] => test test123 [email] => tes1234@mytst.com )
[2] => Array ( [id] => 4 [firstName] => Mike [lastName] => V [fullName] => Mike V [email] => jar_k@yaoo.com )
))
$.ajax({
url: 'https://url,org/api/users/',
datatype:"json",
type: "GET",
headers: {
'Content-Type' : 'application/json',
'Access-Token' : 'CWku8OSq0w'
},
success:function(data){
console.log(data);
$.each(data, function (i, item) {
var a = item.email;
var b = item.id;
if (a == "useremail@nn.com" && b != null){
alert("success!");
}
});
},
error: function(e) {
console.log(e);
},
});
});
如果我item[0]
,它适用于一个结果。如何检查对象数组中的每个结果?
答案 0 :(得分:1)
在结果对象(即data
)内部,有一个对象,其中包含名为data
的属性,其中包含您的实际结果。您可以使用$.each
迭代结果,但要确保迭代您关注的实际数组(data["data"]
):
success:function(data){
console.log(data);
$.each(data["data"], function (i, item) {
var a = item.email;
var b = item.id;
if (a == "useremail@nn.com" && b != null){
alert("success!");
}
});
}
您可以考虑重命名结果变量,以避免混淆您所指的data
。