【发布时间】:2014-01-30 16:11:07
【问题描述】:
大家好,我有下一个问题。当我按 Enter 时,我必须将一个按钮设置为默认值。我可以在表单中使用 DefaultButton,因为现在我的所有页面都继承自母版页,并且我有来自母版页的内容,但这是行不通的。有人可以给我任何替代方案来解决这个问题。谢谢
【问题讨论】:
-
您好,感谢您的回答,但是当页面不是从母版页继承时,这项工作。
标签: asp.net
大家好,我有下一个问题。当我按 Enter 时,我必须将一个按钮设置为默认值。我可以在表单中使用 DefaultButton,因为现在我的所有页面都继承自母版页,并且我有来自母版页的内容,但这是行不通的。有人可以给我任何替代方案来解决这个问题。谢谢
【问题讨论】:
标签: asp.net
根据Enter Key - Default Submit Button:
ASP.NET 2.0 为此引入了一项出色的工作。通过简单 将“defaultbutton”属性指定为 的 ID, 你想触发谁的事件,你的工作就完成了。
默认按钮属性可以在表单级别指定 表单标签以及定义标签中的面板级别。 在面板中指定时,表单级别设置将被覆盖 级别,用于面板内的那些控件。
此外,指定按钮的事件处理程序也会触发 模拟真正的提交按钮功能。
这样
<form id="form1" runat="server" defaultbutton="Button1">
<div>
<asp:Button ID="Button1" runat="server" Text="Button1" OnClick="Button1_Click" />
</div>
或者你可以通过
Page.Form.DefaultButton = crtlLoginUserLogin.FindControl("LoginButton").UniqueID
或者只是
Page.Form.DefaultButton = LoginButton.UniqueID
这会起作用。
【讨论】:
一种方法是通过递归搜索所有子页面控件并找到第一个按钮,获取 id 并设置表单的默认按钮。
虽然我从未尝试过,但我认为这不是一个好主意,因为它速度慢且容易出错。
另一种方法可能是通过 javascript/jquery 来完成,请参阅此答案:
Submit form with Enter key without submit button?
【讨论】: