Ajax 使用回调,因为它是A
同步。
我希望调用远程 URL 块,直到有答案,与 Ajax 完全相同,但没有异步部分,或者我应该说我想要进行 JAX 调用。
是否有任何技术可以使以下情况发生(使用 JQuery)(...使用 JQuery 或其他任何解决方案):
function get_data() {
$.ajax({
type : "POST",
url : "/foo"
}).done(function(data, textStatus, jqXHR) {
return data;
}).fail(function(jqXHR, textStatus) {
return null;
});
}
var data = get_data();
// process `data`
我只是想知道 - 想学习。
实际上,有时候阻塞直到得到答复是合适的。我并不是说我希望浏览器被阻止,只是脚本运行时被阻止。
您可以简单地设置async : false
使用 jQuery 时为布尔值 (检查文档)。做记录:从 jQuery 1.8 开始,不推荐使用 async: false 和 jqXHR ($.Deferred) ;您必须使用完整/成功/错误回调。
如果您不想使用 jQuery 或者想知道幕后发生了什么,读这个.
xmlhttp.open("GET","ajax_info.txt",false);
xmlhttp.send();
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
确实想知道为什么你不希望它是异步的......
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)