取消ASP.NET中的默认提交按钮

x6yk4ghg  于 11个月前  发布在  .NET
关注(0)|答案(5)|浏览(91)

我有一个ASP.NET应用程序,其中有几个ASP.NET按钮和几个纯HTML按钮。
我知道我可以改变defaultButton,但我不希望有任何默认按钮,我只是希望当用户按下回车键时它不会做任何事情。
我试过将defaultButton设置为空白,但似乎不起作用。当按下回车键时,如何防止ASP.NET按钮提交表单?

mxg2im7a

mxg2im7a1#

您可以设置按钮的“提交行为”= false

btnCategory.UseSubmitBehavior = false;

字符串

mgdq6dx1

mgdq6dx12#

这是我用来解决这个问题。

<form runat="server" defaultbutton="DoNothing">
        <asp:Button ID="DoNothing" runat="server" Enabled="false" style="display: none;" />

字符串

svgewumm

svgewumm3#

我也遇到了这个问题,我的MasterPage上的ImageButton(Logout按钮)被设置为默认按钮(所以每当有人按Enter时,它就会将他们注销)。我通过在每个子页面上的Page_Load事件中使用以下行解决了这个问题,这有点变通,但它很有效:

Form.DefaultButton = cmdSubmit.UniqueID;

字符串
希望这能帮助别人。

utugiqy6

utugiqy64#

<asp:TextBox ID="TXT_Quality" runat="server" Width="257px" 
onkeypress="return key_Pressed(event, this);">
</asp:TextBox>   

function key_Pressed(e, textarea)
 {
    var code = (e.keyCode ? e.keyCode : e.which);
    if(code == 13) 
    { 
       return false;
    }
    return true;
 }

字符串

d4so4syb

d4so4syb5#

我在将登录表单的登录按钮设置为默认值后,导航到另一个页面时出现错误。我的解决方法是在母版页的加载事件中进行测试,如果包含的页面不是我的登录页面,则将默认值设置为空,如下所示:

if (Page.AppRelativeVirtualPath != "~/Login.aspx") {
    Page.Form.DefaultButton = "";
}

字符串

相关问题