如何在堆栈溢出网站中实现搜索文本框?

时间:2010-09-16 09:57:49

标签: javascript html asp.net html-form

我在网页上有一个搜索文本框。当用户在该文本框中输入文本后按下回车键时,应执行搜索功能。怎么做?

5 个答案:

答案 0 :(得分:1)

检查onkeypress事件,并查找键码13.一旦点击键码13,点击一个隐藏按钮,然后在该隐藏按钮事件的后端进行编程。

答案 1 :(得分:0)

如果这是表单中唯一的文本字段,则按Enter会导致onsubmit处理程序运行。但那将提交整个页面。如果要在提交时执行ajax命令而不刷新整个页面,请确保onsubmit处理程序返回false。

按Enter键时,要提交常规整页表单提交:

  <form action="/doit">
     <input type="text" value=""/>
  </form>

要在按下enter时执行ajax表单提交,可以使用类似这样的jquery代码:

  $("form").submit(function() {
     $.ajax(...);
     return false;
   });

答案 2 :(得分:0)

如果表单中只有一个输入字段,那么即使没有“提交”按钮,当您按Enter键时表单也会提交。

例如

<form action="/search">
    <input type="text" value="search text">
</form>

将在按下回车时提交。

答案 3 :(得分:0)

基本上你可以这样做: 我喜欢将jquery用于大多数javascript的东西,以实现跨浏览器的兼容性。

$("#btnID").keypress(function(event){
            //filter enter key only
            if(event.keyCode == 13){
                //do something here
            }
            return true;
        });

答案 4 :(得分:0)

我很容易实现这个功能!我有一个搜索文本框和一个style ="display:none"的按钮。这些控件被ASP面板包围,我已将面板的DefaultButton属性设置为按钮的ID。现在,在输入文本并按下回车键时,按钮点击事件中的搜索功能将被执行,并且按钮也对用户不可见!!!