如何在更新面板更新之前执行 JavaScript 函数

Ale*_* B. 1 javascript asp.net jquery submit

我想在触发更新面板进行刷新之前运行 jQuery 函数。由于可以使用许多按钮和其他方式中的任何一个来完成此刷新,因此我希望使用提交处理程序或类似的东西,但它不起作用。

我尝试将事件附加到主窗体:

jQuery('form').submit(function () { alert('submit!'); });
Run Code Online (Sandbox Code Playgroud)

并将其附加到更新面板

jQuery('#pnlContent').submit(function () { alert('submit!'); });
Run Code Online (Sandbox Code Playgroud)

有人知道该怎么做吗?

mas*_*son 6

这对我有用。想到这里了。基本上,您定义一个在更新之前运行的函数,以及一个在更新之后运行的函数。然后,您注册这些函数以与页面请求管理器一起运行。

<script type="text/javascript">
    /* Put your code to run before UpdatePanel begins async postback here */
    function beforeAsyncPostBack() {
        var curtime = new Date();
        alert('Time before PostBack:   ' + curtime);           
    }

    /* Put your code to run after UpdatePanel finishes async postback here */
    function afterAsyncPostBack() {
        var curtime = new Date();           
        alert('Time after PostBack:    ' + curtime);
    }

    /* Don't mess with any of the below code */
    Sys.Application.add_init(appl_init);

    function appl_init() {
        var pgRegMgr = Sys.WebForms.PageRequestManager.getInstance();
        pgRegMgr.add_beginRequest(beforeAsyncPostBack);
        pgRegMgr.add_endRequest(afterAsyncPostBack);
    }      
</script>
Run Code Online (Sandbox Code Playgroud)