为什么Jquery单击不触发ASP.NET链接按钮单击事件?

时间:2014-10-01 13:03:10

标签: jquery asp.net

我在网页上有一个链接按钮,它是母版页的子页面。这是链接按钮代码

<asp:LinkButton ID="lb_submit"  ClientIDMode="Static" runat="server" 
CssClass="btn btn-green submit-button pull-right btn-block">
<span class="start-text" style="font-family:Arial;font-size:14pt;">Start</span>
</asp:LinkButton>

我尝试的方式是

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

但它没有触发该链接按钮的实际点击事件。

我也试过

$('#lb_submit').trigger('click');

这也没有帮助我解决这个问题。实际上我的目的是在页面的任何地方输入键时触发该按钮。那个事件工作正常,我确认了。但我正在分享这个功能

$(document).on("keypress", function (e) {

            if (e.keyCode == 13) {

                // Cancel the default action on keypress event
                e.preventDefault();

                $('#lb_submit').click();
            }
        });

我不知道我做错了什么

<div class="col-md-2 "><a href="javascript:WebForm_DoPostBackWithOptions
(new WebForm_PostBackOptions(&quot;ctl00$cp_body$lb_submit&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, true))" 
class="btn btn-green submit-button pull-right btn-block" id="lb_submit">
<span style="font-family:Arial;font-size:14pt;" class="start-text">Start</span></a>
</div>

2 个答案:

答案 0 :(得分:0)

试试这段代码:

$(document).keyup(function(event){
    if(event.keyCode == 13){
        $("#lb_submit").click();
    }
});

答案 1 :(得分:0)

也许Web服务器呈现的控件的实际ID是不同的,类似于ctl00_lb_submit。试试这个:

$('<%= this.lb_submit.ClientID %>').click();