ASP.Net-穷人异步”;请稍候……”;动画

ASP.Net-穷人异步”;请稍候……”;动画,asp.net,jquery,postback,Asp.net,Jquery,Postback,我有一个页面,由于jQuery,在某些条件下,它会自动单击“运行报告”按钮。因此,当用户通过菜单进入页面时,他们会等待x秒并返回结果。这很有效 但是,我想添加一个动画,因为一些用户不知道正在发生什么,我也想只显示一个微调器。应用程序尚未“Ajaxified”,可能永远也不会。所以我想到了一个穷人的方法 我有一个div,里面有文本和图像。该div有一个类,它只显示none与单击按钮的jQuery相同,我还使用.toggleClass方法将其显示为div 这非常有效,报告运行并最终返回数据,因为此时

我有一个页面,由于jQuery,在某些条件下,它会自动单击“运行报告”按钮。因此,当用户通过菜单进入页面时,他们会等待x秒并返回结果。这很有效

但是,我想添加一个动画,因为一些用户不知道正在发生什么,我也想只显示一个微调器。应用程序尚未“Ajaxified”,可能永远也不会。所以我想到了一个穷人的方法

我有一个
div
,里面有文本和图像。该div有一个类,它只显示
none
与单击按钮的jQuery相同,我还使用
.toggleClass
方法将其显示为div

这非常有效,报告运行并最终返回数据,因为此时页面被刷新,div再次隐藏,一切正常

我的问题是,图像显示但没有动画。我试着把它放在点击之前,希望它会发生,然后点击开始等待


我能做些什么来强制Gif动画?

提交表单会停止所有页面操作,包括Gif动画


解决方法是将表单发布到隐藏的Iframe。当然,当结果出现时,您需要iframe“唤醒”主页并在那里显示其内容。

您是否使用jQuery ajax方法来请求报告?如果是这样,标准ajax方法中内置了一个函数

$.ajax({
    url: "/webservices/taskHelper.asmx/ArchiveTask",
    data: '{taskId: 5}',
    beforeSend: function () {
        $("#spinner").show();
    },
    error: deft.ajaxError,
    success: function (data) {
        $("#spinner").hide();
    }
});
“beforeSend”功能将在单击链接时执行,并继续运行,直到收到服务器的响应。我使用beforeSend函数显示包含动画gif的隐藏div。很好用。

非常合适。将动画图形放在一个隐藏的div中,单击按钮,让javascript“显示”先前隐藏的div。不,我不能使用您的示例。基本上,我调用ObjectDataSource的DataBind方法来“获取”或“reget”数据。在它的_selection事件中,我正在填充运行查询所需的值。我试着把它称为WebMethod,理论上这是可行的,但是WebMethod需要是静态的,这就是它崩溃的地方。我试着启用上面显示的微调器,然后通过javascirpt单击按钮。我得到了相同的结果,图像显示但不旋转。