jQuery keyup和Safari中的’enter’

前端之家收集整理的这篇文章主要介绍了jQuery keyup和Safari中的’enter’前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用jQuery,并希望用户在将数据输入搜索字段后开始搜索时可以按Enter键.

我正在使用以下代码

$('#textSearch').keyup(function (event) {
            if (event.keyCode == '13') {
                doSearch();
            }
            return false;
        });

它在Firefox和IE中完美运行,但在Safari中完全没有.当我在safari中输入并且这不是我想要的时候,表单正在提交.

添加onsubmit =“return false;”到表单工作,但不是一个选项,因为表单标签位于asp.net页面的母版页上,我需要在其他页面上提交表单.

有没有办法让这个功能在Safari中运行?

编辑:
我还试图只显示一个警告而不是doSearch()函数.警报显示正常但在此之后表单正在提交.

解决方法

浏览器可能会因触发提交的事件而异.在这种情况下,Safari可能正在提交keydown事件.
您可以在不更改标记的情况下查看提交事件并取消它:
$('#the-id-of-the-form').submit( function( e ) {
    e.preventDefault();
});

然后,您可以监听keyup事件并像现在一样处理它.

猜你在找的jQuery相关文章