Ajax异步调用true返回值

时间:2016-08-25 16:03:04

标签: javascript php jquery ajax asynchronous

我需要一些关于ajax调用的帮助,我有async true的问题。所以我在html页面上有表单,我正在使用ajax调用来调用将脚本发送到电子邮件的php脚本,然后将值返回到页面并显示有关返回值的通知。到目前为止,一切都运行正常:

$.validator.setDefaults( {
    submitHandler: function () {
        $.ajax({
            type: 'post',
            url: 'Link - script to send info and returns the value',
            data: $('form').serialize(),
            async: false,
            success: function (result) {
                if (result == '1') {
                    $("#error").hide();
                    $("#validate").hide();
                    $("#poslano").show();
                }else {
                    $("#error").show();
                }
            },
        });
    }
} );

因此,在所有输入都正确后,表单如果提交,则ajax脚本的这一部分将数据发送到脚本并获取返回的值。但是,如果我将async设置为false,即使表单正确,我也总是会收到此错误:

  

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

但如果我将异步设置为true,则没有任何反应。我只是收到错误消息。我该如何解决这个问题?非常感谢提前。

1 个答案:

答案 0 :(得分:0)

感谢您的帮助。

解决

async:false;

更改为

async:true;

现在它在控制台中不再有错误。

再次感谢你。

但是如果我使用async:true;如果我正确等待结果,浏览器不会冻结,在这种情况下我该如何处理结果呢?惠特活动?