在下面的代码中,我尝试在ajax请求之前显示div,并在完成后显示div。
hide()工作正常,但show()无法工作。
它在Firefox中运行良好。

$("#btnpst").click(function () {
   $('#dvloading').show();
   $.ajax({
       url: url,
       type: "POST",
       async: false,
       contentType: "application/json; charset=utf-8",
       dataType: "json",
       success: function (data, st) {
           if (st == "success") {
               $('#dvloading').hide();
           }
       },
       error: function () {
           $('#dvloading').hide();
       }
   });
   } //<
});


的HTML

<div id="dvloading" style="width: 480px; height: 320px; position: absolute; overflow: hidden;">
    <image src="../loading_2.gif" style="margin-top: 120px;">
</div>

最佳答案

我认为您正在本地进行测试,响应速度很快。
为什么不更改此行

$('#dvloading').hide();


对此

setTimeout(function(){$('#dvloading').hide();},5000);


看看情况是否如此。另外,检查JavaScript控制台中是否没有与js相关的错误也很有帮助

09-18 18:00