-2
我很困惑我的功能在JQuery
的行为。事情是,is_airport
函数决定,该位置是否是使用机场JSON的机场。JQuery返回true后返回false?
一切似乎工作正常,JSON被正确解析等。正如你可以看到有一个循环用于检测,destination_id
是否在机场的JSON密钥。它是。 它提醒'OK',但返回false
而不是true
。
如果有AJAX
而不是each
函数,我会期待这种行为,因为异步。但为什么发生在这里?
function is_airport(destination_id){
var json_storage = $("#locations-json");
var airports = JSON.parse(json_storage.attr("data-airports"));
$.each(airports,function(id,name){
console.log(id,destination_id,name);
if (id==destination_id){
alert('ok');
return true
}
});
return false
}
$(document).ready(function() {
console.log(is_airport(5));)}
你知道问题在哪里吗?
您从'$ .each'循环返回true,而不是从包装函数 –