我正在使用ajax调用来使用jQuery获取JSON文件。虽然我这样做并且可以达到文件的值,但下一个挑战是获取对象数组的值并将其与输入源进行比较。如果为真,则以跨度或分区打印出来......
这是使用jQuery的脚本:
<!doctype html>
<html>
<head>
<title>jQuery.getJSON demo</title>
</head>
<body>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
/*
$.getJSON('zipcodes.json', function(data){
console.log('It worked!');
//test
});
*/
$.ajax({
url: 'zipcodes.json',
dataType: 'json',
type: 'get',
cache: false,
success: function (data) {
$(data.zipcodes).each(function(index, value) {
console.log(value.zip);
});
}
});
</script>
JSON文件是:
{
"zipcodes": [
{
"zip": "20002",
"city": "Washington",
"state": "DC"
},
{
"zip": "10001",
"city": "New York",
"state": "NY"
}
]
}
JSON文件有效但我想我试图找出zip值的比较,例如
如果var text =&#39; 10001&#39; == value.zip在数组中返回HTML中的城市和状态我可以实现该部分,但在jQuery部分我不知道如何获取索引。我尝试使用.eq和.get,但它不会工作。
谢谢!
答案 0 :(得分:0)
请参阅我的Plunk 我很确定这就是你所追求的。
你的jQuery都很好。您只需要使用jQuery $ .inArray函数检查输入的zip对Array的值,以获取索引:
$.inArray(value, myZips.zipcodes);