【发布时间】:2014-12-06 03:06:27
【问题描述】:
我在网页中有一个搜索文本框。当用户在该文本框中输入文本后按 Enter 键时,应该执行搜索功能。如何做到这一点?
【问题讨论】:
标签: javascript html asp.net forms
我在网页中有一个搜索文本框。当用户在该文本框中输入文本后按 Enter 键时,应该执行搜索功能。如何做到这一点?
【问题讨论】:
标签: javascript html asp.net forms
检查此事件的 onkeypress 事件并查找键码 13。一旦键码 13 被击中,点击隐藏按钮并在该隐藏按钮事件的后端进行编程。
【讨论】:
如果表单中只有一个输入字段,那么即使没有“提交”按钮,表单也会在您按 Enter 时提交。
例如
<form action="/search">
<input type="text" value="search text">
</form>
按下回车后会提交。
【讨论】:
如果这是表单中唯一的文本字段,则按 Enter 会导致 onsubmit 处理程序运行。但这将提交整个页面。如果您想在 onsubmit 上执行 ajax 命令而不刷新整个页面,请确保您的 onsubmit 处理程序返回 false。
按下回车键时进行常规的整页表单提交:
<form action="/doit">
<input type="text" value=""/>
</form>
要在按下回车键时进行 ajax 表单提交,可以使用类似这样的 jquery 代码:
$("form").submit(function() {
$.ajax(...);
return false;
});
【讨论】:
基本上你可以这样做: 我喜欢将 jquery 用于大多数 javascript 内容以实现跨浏览器兼容性。
$("#btnID").keypress(function(event){
//filter enter key only
if(event.keyCode == 13){
//do something here
}
return true;
});
【讨论】:
我已经很容易地实现了这个功能!我有一个搜索文本框和一个带有style ="display:none" 的按钮。这些控件被一个 ASP 面板包围,我将面板的 DefaultButton 属性设置为按钮的 ID。现在,在输入文本并按下回车键时,按钮单击事件中的搜索功能将被执行,并且该按钮对用户也是不可见的!!!
【讨论】: