【问题标题】:Trouble binding jquery javascript click event to asp.net button无法将 jquery javascript 单击事件绑定到 asp.net 按钮
【发布时间】:2010-11-11 09:38:28
【问题描述】:

我使用以下代码:

jQuery(document).ready(function () {

jQuery('<%= btnSave.ClientID %>').click(function(){

    alert('hello world');

});

});

当我点击 asp.net 按钮时:

<asp:Button ID="btnSave" runat="server" Text="Save" OnClick="btnSave_Click" />

它只是不火。有人知道为什么吗?

干杯, 皮特

【问题讨论】:

    标签: c# javascript asp.net jquery button


    【解决方案1】:
    jQuery(document).ready(function () {
    
    jQuery('#<%= btnSave.ClientID %>').click(function(){
    
        alert('hello world');
    });
    
    });
    

    你为什么放 .ClientID??在 asp 中你没有给按钮添加任何类

    对不起我的英语

    【讨论】:

      【解决方案2】:

      嗨,抱歉,我发现它需要在选择器前加一个井号!

       jQuery(document).ready(function () {
      
      jQuery('#<%= btnSave.ClientID %>').click(function(){
      
          alert('hello world');
      
      });
      

      });

      【讨论】:

        【解决方案3】:

        这里的另一种选择是使用一个类,这样您就可以在外部移动您的代码,例如:

        <asp:Button ID="btnSave" CssClass="btnSave" runat="server" Text="Save" OnClick="btnSave_Click" />
        

        那么你的代码可以如下所示:

        jQuery(function($) {
          $('.btnSave').click(function() {
            alert('hello world');
          });
        });
        

        可以在外部.js 中,因此您的用户下载一次,而不是每次都作为页面的一部分。或者,使用attribute ends-with selector 效率稍低,如下所示:

        jQuery(function($) {
          $('input[id$=btnSave]').click(function() {
            alert('hello world');
          });
        });
        

        这将选择 ID 以 btnSave 结尾的所有 &lt;input&gt; 元素。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-10-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-04-03
          • 1970-01-01
          相关资源
          最近更新 更多