分享

JQuery实现回车代替Tab键(按回车跳到下一栏)

 hncdman 2022-11-28 发布于湖南

 2022-05-19 08:29 

一个提交按钮以后,用户如果按了键盘的回车键,默认情况下,就会提交这个表单了。这样对于用户输入各个表单项目,用户体验很不好,输入完一个项目,或者用鼠标选择下一个项目,或者用键盘的Tab键选中下一个项目。

二、问题要求:

1:如果当前处于焦点(也就是用户正在输入的那个文本框)不是最后一个输入框,那么按回车键时,将焦点转移到下一个输入框;

2:如果当前处于焦点(也就是用户正在输入的那个文本框)是最后一个输入框,那么按回车键时,将请用户确认后提交表单;

三、基本思路:

1:判断按键是否是回车建, 这个比较好办,用jQeury中的事件,就可以获取到当前按的键的值了,回车键的值是13,比较一下即可。

2:判断当前处于焦点的输入框是不是最后一个输入框。

  1. $(function() {

  2. $(“form[name=’contractForm’] input:text”).keypress(function(e) {

  3. if (e.which == 13) {// 判断所按是否回车键

  4. var inputs = $(“form[name=’contractForm’]“).find(“:text”); // 获取表单中的所有输入框

  5. var idx = inputs.index(this); // 获取当前焦点输入框所处的位置

  6. if (idx == inputs.length - 1) {// 判断是否是最后一个输入框

  7. if (confirm(“最后一个输入框已经输入,是否提交?”)) // 用户确认

  8. $(“form[name=’contractForm’]“).submit(); // 提交表单

  9. } else {

  10. inputs[idx + 1].focus(); // 设置焦点

  11. inputs[idx + 1].select(); // 选中文字

  12. }

  13. return false;// 取消默认的提交行为

  14. }

  15. });

  16. });

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多