&引用;“装载”;在Jquery中执行另一个函数时使用微调器进行div

&引用;“装载”;在Jquery中执行另一个函数时使用微调器进行div,jquery,html,css,asp.net,Jquery,Html,Css,Asp.net,堆栈溢出 我有一个ASP项目,我正在用jQuery管理客户端,我最近开始学习 我的项目将~400行表格加载到GridView。之后可以对该表进行筛选 我处理过滤所依赖的变量的方式可能不是最有效的,因为过滤需要相当多的时间。然而,到目前为止,我还没有想出另一种方法来标记我的行 无论如何,我想在筛选表时显示一个带有微调器的“加载”div(这只是在筛选项中添加和删除hiddenRow类) 我试着用下面这句话来处理这个问题: $('#loading').fadeIn().promise().done(f

堆栈溢出

我有一个ASP项目,我正在用jQuery管理客户端,我最近开始学习

我的项目将~400行表格加载到GridView。之后可以对该表进行筛选

我处理过滤所依赖的变量的方式可能不是最有效的,因为过滤需要相当多的时间。然而,到目前为止,我还没有想出另一种方法来标记我的行

无论如何,我想在筛选表时显示一个带有微调器的“加载”div(这只是在筛选项中添加和删除hiddenRow类)

我试着用下面这句话来处理这个问题:

$('#loading').fadeIn().promise().done(function(){
      //the whole filtering function
});
这段代码有效地显示了加载div,但是我的微调器在整个表被过滤之前从不旋转,这违背了div的目的。div显示,微调器被冻结,表被过滤了几秒钟,并且只有在过滤完成(内存被释放?)后才开始旋转


我的选择是什么?因为我看了一些视频,我考虑使用Worker,但我使用的是jquery-1.8.3(这是与工作相关的,浏览器是IE8-),我认为它不受支持。另一个答案建议使用纯CSS微调器,这听起来很不错,但也不受支持。我知道我确实受到工具的限制,但我能做些什么吗?

你可以试试这样的东西

// queue the filtering function after spinner appears
$('#loading').fadeIn().queue(function() {
      filteringFunction().done(function() {
          // remove the spinner, do other stuff
          // this will execute when the filteringFunction is complete
      });
});

// use jQuery.Deferred() to synchronize the actions after filtering completes
function filteringFunction() {
     var status = $.Deferred();

     ... // the whole filtering function
     status.resolve(); // set this value when your logic is complete

     return status;
}

如果您想显示加载图像,请在母版页中保留一个div,并为ajax调用创建一个全局jqueryhook,如下所示

<div id="waitImageDiv" >
add your image or message here
</div>

//Global hook-up - show "please wait" when any ajax call is made in the application
$(document).ajaxStart(function () {
    $('#waitImageDiv').show();
});

$(document).ajaxStop(function () {
    $('#waitImageDiv').hide();
});

在此处添加您的图像或消息
//全局连接-在应用程序中进行任何ajax调用时显示“请稍候”
$(文档).ajaxStart(函数(){
$('#waitImageDiv').show();
});
$(文档).ajaxStop(函数(){
$('#waitImageDiv').hide();
});

在筛选行时是否进行jquery ajax调用?我尝试过,但从未触发。我不认为我在使用ajax调用。我不明白ajax调用的真正含义,但我的筛选函数只是通过选择器获取jQuery对象,并添加和删除类。Visual Studio IntelliSense没有为我的筛选函数获取“完成”函数我不知道,因此无法对此发表评论。但是你试过运行代码吗?您可以阅读有关延迟的内容。完成:我会尝试一下,然后再给您回复!:)