【发布时间】:2017-03-08 15:35:16
【问题描述】:
我写了一个简单的函数来确定你的城市位置。但是,我想知道是否有办法强制函数等待 getJSON 然后移动到下一行代码?在示例中,您将看到它显示“警报 1”跳过“警报 2”并直接转到“警报 3”,然后显示“警报 2”。提前谢谢你。
最好的问候, 乔治
var Alpha;
function Location(){
alert(Alpha + " 1");
$.getJSON("http://freegeoip.net/json/?callback=?", function(location){
Alpha = location.city;
alert(Alpha + " 2");
});
alert(Alpha + " 3");
}
$(document).ready(function() {
Location();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
【问题讨论】:
-
您可以使用承诺或回调。 getJSON 与您的代码是异步的。
-
你为什么不把代码移到你的回调中?
标签: javascript jquery json getjson