我有一个简单codesample之前等待做两件事情:如何执行的jQuery的AJAX执行以下语句
- 询问接受郎头(阿贾克斯)
- 使用/引用它(可AJAX的一部分,因为这需要在很多地方,样品是显示在屏幕上)
的HTML是这样的:
<html>
<head>
<script src="jquery-1.11.0.js"></script>
</head>
<body>
<H1 id=bLocale>Should be the browser locale here</H1>
</body>
<script>
var bLocale='unchanged';
$.ajax({
url: "http://ajaxhttpheaders.appspot.com",
dataType: 'jsonp',
success: function(headers) {
bLocale= headers['Accept-Language'];
comma=bLocale.indexOf(',');
if(comma>0) bLocale=bLocale.substring(0, comma);
},
async: false
});
$("#bLocale").text(bLocale);
</script>
</html>
问题是ajax太慢了(即使asyn set false),并且显示在bLocale获取返回值之前发生。
解决此问题的任何想法?
欢迎** **异步的奇妙世界!你不能那样做。 – SLaks
不适用于JSONP,不会。 JSONP本质上是异步的。真正的阿贾克斯alls可以被迫是同步的,但不是JSONP。 –
你为什么不不只是把'$(“#bLocale”)文本(bLocale);'你的AJAX成功函数 – putvande