__doPostBack()导致回发,但未在aspx页面中调用按钮单击事件 [英] __doPostBack() is causing post back but not calling button click event in aspx page

查看:70
本文介绍了__doPostBack()导致回发,但未在aspx页面中调用按钮单击事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用一个带按钮的aspx页面.

I am using a aspx page which is having a button.

 <asp:Button ID="savebtn" runat="server" OnClick="savebtn_Click" Style="display: none" />

有两种导致回发的方法,如下面的代码所示.

There are two ways to cause post back as shown in the below code.

 $(document).ready(function () {
               var id = document.getElementById('<%= savebtn.ClientID %>');
       //Cause post back & calls page load but not savebtn_Click event
            __doPostBack('<%= savebtn.ClientID  %>', 'OnClick');

    });

    $(document).ready(function () {
                     var id = document.getElementById('<%= savebtn.ClientID %>');
           //Cuase postback & calls both PageLoad and savebtn_Click events.
           //If I use method, There is no way to know which control caused postback
            id.click();

    });

当我使用__doPostBack时,它会调用页面加载事件,但不会调用btn click事件.

When I use __doPostBack, It calls page load event but not btn click event.

是否可以使用__doPostBack触发页面加载以及savebtn_Click事件.

如果我使用id.click();如上所示,我可以调用savebtn_Click,但它不会告诉我哪个控件导致了回发.

If I use id.click(); as shown above, I am able to call savebtn_Click but it does not tells me which control caused the post back.

推荐答案

您尝试使用 UniqueID 而不是 ClientID ?

__doPostBack('<%= savebtn.UniqueID %>', "");

还可以在dopostback上查看此快速教程:

Also have a look at this quick tutorial on dopostback:

这篇关于__doPostBack()导致回发,但未在aspx页面中调用按钮单击事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆