Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/464.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery显示消息,然后是Ajax,然后是隐藏消息_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript Jquery显示消息,然后是Ajax,然后是隐藏消息

Javascript Jquery显示消息,然后是Ajax,然后是隐藏消息,javascript,jquery,ajax,Javascript,Jquery,Ajax,我举个例子 document.ready(function() { $("#Show").bind("click", function() { var F = Function2(); if (F) { // Do Other Stuff. } } }); function Function2() { $("#Message").Show(); $.ajax({

我举个例子

document.ready(function() {
    $("#Show").bind("click", function() 
    {
        var F = Function2();
        if (F)
        {
            // Do Other Stuff.
        }
    }
});

function Function2()
{
    $("#Message").Show();

    $.ajax({
              type: "POST",
               url: [MyURL]
               async: false;
               contentType: 'application/json; charset=utf-8',
               data: JSON.stringify(PostData),
               dataType: "json",
               success: function (returnVal) {
           $("#Message").Hide();
                   return true;
               },
               error: function (xhr, ajaxOptions, thrownError) {
                   return false;
               }
           });

}

</script>




<div id="Message" style="display:none;">
    <!-- Loading Image In here -->
</div>
<a href="#" id="Show" onclick="return:false;">Show then Hide</false>
</code>
document.ready(函数(){
$(“#显示”).bind(“单击”,函数()
{
var F=Function2();
如果(F)
{
//做其他事情。
}
}
});
函数Function2()
{
$(“#消息”).Show();
$.ajax({
类型:“POST”,
url:[我的url]
异步:false;
contentType:'application/json;charset=utf-8',
数据:JSON.stringify(PostData),
数据类型:“json”,
成功:函数(returnVal){
$(“#消息”).Hide();
返回true;
},
错误:函数(xhr、ajaxOptions、thrownError){
返回false;
}
});
}
先露后藏

现在我想让这个messagebox显示出来,但是由于某种原因,AJAX在AJAX请求完成之前不会显示它,现在已经太晚了。我已经将async设置为false,这也没有帮助。

我认为这个问题的根源是语法错误。JavaScript区分大小写,因此正确的语法会更低大小写
show()
hide()

如果在修复语法错误后仍然存在问题,请尝试使用
ajaxStart
事件显示消息,并在成功时隐藏消息

//use the ajaxstart event to display the message
$('#message').ajaxStart(function() {
    $(this).show("slow");
});

$.ajax({   
    type: "POST",   
    url: [MyURL]   
    async: false;   
    contentType: 'application/json; charset=utf-8',   
    data: JSON.stringify(PostData),   
    dataType: "json",   
    success: function (returnVal) {   
        $("#Message").hide("slow"); //hide message on success   
        return true;   
    },   
    error: function (xhr, ajaxOptions, thrownError) {   
        return false;   
    }   
});  
推迟表演或隐藏
这里有一个JSFIDLE:

在得到true或false后,尝试在click事件中隐藏消息div

删除async:false,我认为这与解决这个问题无关。AJAX调用的目的是进行异步调用

此外,还有一个错误,它不是$(“#Message”).Show()它的$(“#Message”).Show()和hide()都是小写的


尝试更改这些,我希望它能起作用。

问题是消息没有显示,它只运行AJAX代码,然后在AJAX完成时显示消息。我需要图像显示,然后运行AJAX,然后隐藏图像。
$("#message").delay(3000).hide("slow");