3 javascript asp.net enter keypress
早上好...
我在每个页面中使用java脚本来触发Enter文本框内的按键事件.它工作正常.现在我想将代码放在.js文件中以进行全局访问.
function EnterKeyPress(id,e) {
// look for window.event in case event isn't passed in
if (window.event) { e = window.event; }
if (e.keyCode == 13 || e.keyCode == 121) {
window.document.getElementById('<%= ibtnSubmit.ClientID %>').click();
}
}
Run Code Online (Sandbox Code Playgroud)
我不想硬编码控件ID.有人可以帮帮我吗
您可以使用id参数而不是ControlID,并且在页面中使用此功能时,可以将ControlID作为参数传递:
function EnterKeyPress(id,e) {
if (window.event) { e = window.event; }
if (e.keyCode == 13 || e.keyCode == 121) {
document.getElementById(id).click();
}
}
Run Code Online (Sandbox Code Playgroud)
您正在使用ASP .NET,因此在您的代码隐藏中,您可以分配keypress事件:
TextBox1.Attributes.Add("onkeypress",
string.Format("EnterPressKey('{0}', event);", ibtnSubmit.ClientID));
Run Code Online (Sandbox Code Playgroud)
但是等等,该功能已经在ASP .NET上完成,您可以使用ASP:Panel控件来包装您的常用控件,并且您可以为面板指定DefaultButton以指示当Panel控件具有焦点时用户单击哪个按钮以及用户按下Enter键.