如何使用 jQuery 使 ASPxButton 被点击?

How to use jQuery to cause ASPxButton to click?

我有一个 ASPxButton:

<dx:aspxbutton ID="btnRefreshData" runat="server" Text="Refresh" 
                    meta:resourcekey="btnRefreshDataResource1">
                </dx:aspxbutton>

我已经使用 jQuery 来点击按钮:

$('#btnRefreshData').click();

但是事情没有解决。按钮没有点击。你能帮我找到解决办法吗?

其实DevExpress已经提供了很多JavaScript功能来帮助我们做到这一点:

aspxBClick("MainContent_btnRefreshData")

"MainContain" 是内容占位符的 ID。该按钮必须保留在内容占位符内才能生效。为了存档它,我们调用 "aspxBClick" 函数并传递一个参数,该参数是由内容占位符 ID 和按钮 ID 编译而成的字符串。

示例代码:

<script>
aspxBClick("MainContent_btnRefreshData")
</script>

<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
    <dx:aspxbutton ID="btnRefreshData" runat="server" Text="Refresh" 
                    meta:resourcekey="btnRefreshDataResource1">
                </dx:aspxbutton>
    </asp:Content>

附加方式:

我们可以调用按钮id来做点击:

btnRefreshData.DoClick();

记得给按钮添加属性ClientInstanceName:

<dx:aspxbutton ID="btnRefreshData" runat="server" Text="Refresh" ClientInstanceName="btnRefreshData"
                    meta:resourcekey="btnRefreshDataResource1">
                </dx:aspxbutton>
    </asp:Content>

要在客户端的devexpress 按钮上触发点击事件,定义它ClientSideEvents。

可以直接在ClientSideEvents的设置中声明一个函数:

<dx:ASPxButton ID="ASPxButton1" runat="server" Text="ASPxButton" AutoPostBack="False">
 <ClientSideEvents Click="function(s, e) {
      alert('The Click event has been invoked');
 }" />

或者你可以赋值js函数,这个函数会在别的地方定义:

<dx:ASPxButton ID="ASPxButton1" runat="server" Text="ASPxButton" AutoPostBack="False">
 <ClientSideEvents Click="ASPxButton1_click" />

function ASPxButton1_click(s, e) {
      alert('The Click event has been invoked');
 }

来源:https://documentation.devexpress.com/#AspNet/CustomDocument9448