Onkeypress函数无法在引导输入框

时间:2016-12-21 23:39:08

标签: javascript jquery html twitter-bootstrap

当用户将Enter键按到某个输入框时,我一直在尝试编写一个转到不同页面的函数。这是代码:

<div class="container">
        <div class="row">
            <form>
            <div id="search" onkeypress="enter(event)" >
                <div class="input-group col-md-offset-8 col-md-3">
                    <input type="text" class="form-control">
                    <div class="input-group-btn">
                        <a href="mylink.com" tab-index="-1" class="btn btn-default" type="submit"><i class="glyphicon glyphicon-search"></i></a>
                    </div>
                </div>
            </div>
            </form>
        </div>
</div>

    <script>
            function enter(event){
                if (event.keyCode == 13){
                    document.location.href = "newpage.com";
                }
            }
    </script>

提前致谢!

1 个答案:

答案 0 :(得分:0)

发生的事情很简单,你有一个“表单”标签,所以当你点击回车时,“onkeypress”正在触发事件,你创建的函数“enter”正在处理该事件,但是有一个“form”标签它只是提交一份表格。

要避免这种情况,只需删除“表单”标记,或者只需将其替换为以下内容:

<form onsubmit="event.preventDefault();">

此外,如果要重定向到其他页面,则必须添加协议,例如:

document.location.href = "http://newpage.com";

我希望它有所帮助:)