如何使用jQuery导致ASPxButton单击?

时间:2016-04-05 09:24:54

标签: jquery devexpress aspx-user-control

我有一个ASPxButton:

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

我使用jQuery来点击按钮:

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

但是事情没有成功。该按钮不会单击。你能帮我找到解决方案吗?

2 个答案:

答案 0 :(得分:1)

实际上,DevExpress提供了许多JavaScript功能来帮助我们做到这一点:

aspxBClick("MainContent_btnRefreshData")

&#34; MainContain&#34;是Content Place Holder的ID。按钮必须留在内容占位符内以实现此功能。要归档这个,我们称之为#34; aspxBClick&#34;函数并传递一个参数,该参数是由内容占位符ID和Button的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>

答案 1 :(得分:0)

要在客户端的devexpress按钮上触发click事件,请将其定义为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