我们如何说“在load()函数执行某些操作之前”

时间:2019-01-25 17:47:52

标签: jquery ajax

我想用load()获得一个文件; PHP ajax中的函数,并且我想在load()函数获取我的文件之前做一个微调器。 所以我怎么说:在load()函数将文件放到div中之前,在该位置放一个微调器,

<div class="storeShowInModal"></div>
$("#myStoreId").click(function()
{
    $('.storeShowInModal').html('<i class="fa fa-spinner fa-spin w3-text-blue" style="font-size:36px"></i>');
    $(".storeShowInModal").load("myStore.php");
});

2 个答案:

答案 0 :(得分:1)

由于load()是AJAX调用的包装程序,因此可以使用ajaxSend()ajaxSuccess()函数在加载请求之前显示微调框,然后在请求成功后删除该显示。这一切都发生在您的函数之外,并由jQuery的AJAX工具调用。

HTML

<span id="loading"><img src="spinner.gif" /></span>

jQuery

$("#loading").ajaxSend(function(){
   $(this).show();
 });

$("#loading").ajaxSuccess(function(){
   $(this).hide();
 });

请记住,这将针对每个AJAX请求进行。如果要对事件进行自定义,则必须从原始函数编写并调用显示。

答案 1 :(得分:1)

好吧

function loadContent(){
    $(".spinner").show();
    $(".storeShowInModal").load("myStore.php",function(){
        $(".spinner").hide();
    });
}