输入框重置输入而不是运行功能页面

时间:2016-12-16 17:30:23

标签: javascript jquery html input which

所以我已经阅读了很多相关内容,但我看到的资源都没有解决我的问题 具体问题
目标:当文本输入到框中并输入命中时,我希望函数$("#search").click();能够运行
问题:相反,它似乎刷新了页面。

我在按钮上遇到了类似的问题,但是type="button"解决了这个问题。我已经尝试将输入的类型更改为submit, text, search,但没有骰子。

我试过了 在onsubmit="return false;"代码和父代input代码及所有组合中设置form

该功能的代码:

$("#searchInput").keypress(function(e){
                if(e.which == 13){
                    $("#search").click();
                };
        });

它超出了它之前的ajax请求的范围。我也尝试了keyCode

编辑:缩小&&编辑#2 以前的编辑打破了点击功能:这是小提琴:https://jsfiddle.net/bushido/ypxm0ukL/13/
感谢任何帮助

2 个答案:

答案 0 :(得分:1)

Js在这里小提琴:https://jsfiddle.net/sav1q3wt/1/

我做的事情:

1)将keypress事件处理程序移出onclick 2)将onclick更改为submit并添加了e.preventDefault();

编辑:

preventDefault()可防止默认行为ex:单击提交按钮后重定向

答案 1 :(得分:1)

如果您将按键处理程序移出onclick,并将preventDefault()添加到按键处理程序,它应该可以正常工作:

$("#searchInput").keypress(function(e){
    if(e.which == 13){
        e.preventDefault();
        $("#search").click();
     };
 });

试试这个小提琴:https://jsfiddle.net/chestercharles/ypxm0ukL/12/