移动Safari键盘表单提交

Tre*_*vor 5 javascript mobile mobile-safari

我有一个基本form的a search input和a submit buttonwithin.当焦点发生时input,键盘会按预期显示.当我按下时button,表单提交事件发生,我调用它,event.preventDefault()然后进行ajax调用.但是,当我按下键盘上的搜索按钮时,键盘只是隐藏,并且没有发生提交事件.

当我按下键盘上的搜索时,为什么表单不提交?如何通过键盘搜索按钮触发此事件?

谢谢.

Tre*_*vor 5

键盘搜索按钮必须绑定到一个按键事件,并具有keycode13.

基本上,听取keypress事件并返回除了之外的所有电话e.which === 13

$('input').on('keypress', function ( e ) {
    if ( e.which !== 13 ) {
        return;
    }

    // ajax code
}
Run Code Online (Sandbox Code Playgroud)