0

我有以下命令按钮:

<asp:Button Text="Insert Value" UseSubmitBehavior="false" runat="server" OnClientClick="return Confirmation.value('insert');" CommandName="Insert" />

UseSubmitBehavior="false"用来防止ASP.Net 页面输入键导致回发

我不想通过 javascript 收听 enter keyCode,因为 enter 用于提交与表单无关的非 webform 元素

显然,当使用 a 时CommandUseSubmitBehavior="false"然后OnClientClick不起作用。如果我打开提交行为,它会按预期工作,但然后在页面上按回车会自动尝试单击按钮。

我不喜欢在 Jquery 或 javascript 中监听 click 事件,而更喜欢 webform 解决方案。可能是防止输入提交表单的更好方法或 OnClientClick 在没有提交行为的情况下正常工作的方法

4

1 回答 1

0

您可能需要使用 Panel 并将所有表单保留在 Panel Tag 中,并将 Panel 的 DefaultButton 值设置为 Button。如下:

    <asp:Panel ID="Panel1" runat="server" DefaultButton="Button1">

         // other form elements

       <asp:Button Text="Insert Value" ID="Button1" runat="server" OnClientClick="return Confirmation.value('insert');" />
    </asp:Panel>
于 2018-11-30T17:47:31.353 回答