Jquery ajax在主线程上警告"同步XMLHttpRequest ..."

时间:2015-06-24 06:11:28

标签: jquery ajax

我使用JQuery $ .ajax加载html内容并发出警告

主线程上的同步XMLHttpRequest因其对最终用户体验的不利影响而被弃用。如需更多帮助,请查看http://xhr.spec.whatwg.org/

这是我的代码

var html = $.ajax({
    type: "GET",
    url: "http://localhost/loginmodal.php",
    async: false
}).responseText;

$('#' + divID).append(html).trigger("create");

如果我使用async:true选项,我发现可以修复此警告。 但是,当我使用async:true选项时,ajax根本不起作用。如果我使用async:false选项,则会出错。

状况。

  1. globalFunctions.js具有调用上面代码的实用程序函数。这个函数只有上面的代码,没有别的。它有一个参数divID,将加载ajax html。
  2. home.php有一个按钮。如果用户单击该按钮,则会调用globalFunctions.js中的函数。
  3. 就是这样! 我唯一使用的库是JQuery。

    先谢谢你的回答!

2 个答案:

答案 0 :(得分:0)

由于错误说问题是async: false设置,它会强制执行同步ajax请求。

处理ajax请求的正确方法是使用像

这样的回调方法
$.ajax({
    type: "GET",
    url: "http://localhost/loginmodal.php"
}).done(function (html) {
    $('#' + divID).append(html).trigger("create");
});

答案 1 :(得分:0)

删除ajax调用中的async:false

       async: false