Триггерный клик LinkButton

Я пытаюсь вызвать событие click из LinkButton с помощью Jquery, но это не работает.

у меня 2 пульта

<asp:TextBox ID="txtCoupon" runat="server" onkeyup="EnterEvent(event, this);"></asp:TextBox>
<asp:LinkButton ID="lnkValidateCoupon" runat="server" OnClick="lnkValidateCoupon_Click">Validate Coupon</asp:LinkButton>

И моя функция js

<script type="text/javascript">
    function EnterEvent(e, ctrl) {
        var keycode = (e.keyCode ? e.keyCode : e.which);
        if (keycode === 13) {
            $('[id$=lnkValidateCoupon]').click();
        }
        else {
            return false;
        }
    }
</script>

Когда я нажимаю клавишу Enter внутри текстового поля, он ничего не делает. Я отлаживал с помощью F12 с Chrome. Я вхожу в раздел click(), но он не запускает серверный код события click.


person Maximus Decimus    schedule 22.01.2014    source источник


Ответы (1)


Оберните элементы управления в asp:Panel и установите DefaultButton.

<asp:Panel runat="server" DefaultButton="lnkValidateCoupon">
  <asp:TextBox ID="txtCoupon" runat="server"></asp:TextBox>
  <asp:LinkButton ID="lnkValidateCoupon" runat="server" OnClick="lnkValidateCoupon_Click">Validate Coupon</asp:LinkButton>
</asp:Panel>
person luke2012    schedule 22.01.2014