如何在asp.net回发之前运行jquery

时间:2015-10-09 08:30:13

标签: c# jquery asp.net

我想运行带有动画/淡出框的jquery代码。该框是一个包含数据库数据的ASP列表视图。当用户点击“删除”时在框中,将执行updatecommand,因此数据库中的数据将被更新,但它不会执行jquery的淡出动画,因为页面已经刷新。如何先用jquery淡出盒子,然后回发页面?

2 个答案:

答案 0 :(得分:0)

您可以使用以下JS来淡出beginRequest函数中的框

jQuery(function ($) {
    var prm = Sys.WebForms.PageRequestManager.getInstance();
    prm.add_beginRequest(function (source, args) {
        // code to fade out the box
    });
    prm.add_endRequest(function (source, args) {
        // any other code you want to execute after the post back finishes
    });
});

务必将ScriptManager和UpdatePanel添加到您的页面。有关详细信息,请查看此MSDN reference

答案 1 :(得分:0)

您可以使用" OnClientClick"删除按钮的属性,用于运行jQuery。

然后你可以从你运行和完成动画的jQuery方法返回,然后确认对你的PostBack的调用。

按钮:

<asp:Button id="btnDelete" runat="server" OnClientClick="return runAnimation()" OnClick="btnDelete_Click" text="Delete" />

jQuery的:

function runAnimation()
{
   // animate 
   return true; // Do postback

   // problem
   return false; // Don't do postback
}