当我在浏览器中打开我的 JSON 文件并将其放入控制台时:
var p = document.getElementsByTagName('pre');
for(i=0; i < p.length; i++) {
var data = JSON.parse(p[i].innerHTML);
var pc = data.postalcodes;
for (var key in pc) {
if (key == "800") {
alert("Postcode:" + key + ", name: " + pc[key].name);
}
}
}
它工作正常。
现在我只想做同样的 put 必须加载 JSON 文件。我做了这个代码:
<script type="text/javascript">
$(document).ready(function() {
$("#postcode").focusout(function() {
$.getJSON("postnr.json", function(json) {
var data = json;
var pc = data.postalcodes;
for (var key in pc) {
if (key == "800") {
alert(key + "yes" + pc[key].name);
}
}
});
});
})
</script>
但是在 focusout 上什么都没有发生,我认为这是因为 JSON 没有加载。为什么没有加载?