栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用Enter键阻止表单提交

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Enter键阻止表单提交

这是我功能的修改版本。它执行以下操作:

  1. 防止Enter键在除textarea,button和Submit之外的表单的任何元素上起作用。
  2. 回车键现在就像一个标签。
  3. preventDefault(),在元素上调用stopPropagation()很好,但是在表单上调用似乎阻止事件到达元素。

因此,我的解决方法是检查元素类型,如果该类型不是textarea(允许输入),或者不是按钮/提交(enter = click),那么我们只需跳到下一页即可。

在元素上调用.next()没什么用,因为其他元素可能不是简单的同级元素,但是由于DOM在选择时几乎都是保证顺序的,所以一切都很好。

function preventEnterSubmit(e) {    if (e.which == 13) {        var $targ = $(e.target);        if (!$targ.is("textarea") && !$targ.is(":button,:submit")) { var focusNext = false; $(this).find(":input:visible:not([disabled],[readonly]), a").each(function(){     if (this === e.target) {         focusNext = true;     }     else if (focusNext){         $(this).focus();         return false;     } }); return false;        }    }}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/495355.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号