今天做项目用到,项目是一个洗车系统,刷卡后在焦点出自动触发回车键事件,如,一个文本框,把焦点放入,刷一下卡,文本框自动获取卡号,同时触发回车事件,(就像银行办卡一样),发现刷卡后页面刷新后并没有执行按钮里的代码,经过查询,找到两个方法,方法一:把文本框改成html控件,加上runat=server(服务器控件没有onkeydown),同时,加上
- <input type="text" id="t1" onkeydown="if(event.keyCode==13){document.getElementById('bt').click();return false;}" /><button id="bt" onclick="alert('回车单击了按钮!!')">确 认</button> 就执行了button的事件(button是服务器控件也行)
- 第二个方法是:继续服务器控件,在pageload里写上:
txtCode.Focus();
txtCode.Attributes.Add("onkeydown", "if(event.which || event.keyCode){if ((event.which == 13) || (event.keyCode == 13)) {document.getElementById('" + btnSearch.UniqueID + "').click();return false;}} else {return true}; ");