【问题标题】:Mobile Safari Keyboard Form Submission移动 Safari 键盘表单提交
【发布时间】:2012-06-22 17:30:59
【问题描述】:

我有一个基本的form,里面有一个search input 和一个submit button。当焦点发生在input 中时,键盘将按预期显示。当我按下button 时,会发生表单提交事件,在该事件中我调用event.preventDefault() 而是进行ajax 调用。但是,当我按下键盘上的 search 按钮时,键盘只是隐藏并且没有发生提交事件。

为什么当我在键盘上按搜索时表单没有提交?如何通过键盘搜索按钮触发此事件?

谢谢。

【问题讨论】:

  • 你能贴出代码吗?您不需要监听事件。
  • 其实如果你想使用ajax,你确实需要监听一个事件
  • 哦,明白了,我通常使用表单提交通过 ajax 提交我的数据。您可以将表单数据序列化为 json 并直接发送。比必须将每个输入直接连接到模型要容易得多。

标签: javascript mobile mobile-safari


【解决方案1】:

键盘搜索按钮必须绑定到按键事件并且具有13keycode

基本上,监听keypress事件并返回除e.which === 13之外的所有调用

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

    // ajax code
}

【讨论】:

    猜你喜欢
    • 2011-04-05
    • 2017-03-08
    • 2013-02-14
    • 1970-01-01
    • 2010-11-05
    • 1970-01-01
    • 1970-01-01
    • 2016-03-17
    • 2021-01-03
    相关资源
    最近更新 更多