快捷导航
查看: 87|回复: 0

[表单按钮] 文本框删除或者填写自动获取焦点

[复制链接]
发表于 2017-1-10 10:58:04 | 显示全部楼层 |阅读模式
本帖最后由 antzone 于 2017-1-10 10:57 编辑

文本框内容删除或者填写自动获取焦点:
为了人性化,如果有多个文本框的话,填写或者删除一个文本框内容之后会自动跳到下一个文本框。
下面就通过代码实例详细介绍一下如何实现此功能。
代码实例如下:
[HTML] 纯文本查看 复制代码运行代码
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>蚂蚁部落</title>
<style type="text/css">
.inp > input {
  width: 50px;
  height: 50px;
  font-size: 40px;
  text-align: center;
}
.inp span {
  font-size: 40px;
}
</style>
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function () {
  $('.inp>input').keypress(function (event) {
    if (event.keyCode != 8) {
      var num = $(this).attr('class').substr(-1)
      num = parseInt(num) + 1
      $('.put' + num).focus()
    }
  })

  $('.inp>input').keyup(function (event) {
    if (event.keyCode == 8) {
      var num = $('.inp>input:focus').attr('class').substr(-1)
      num = parseInt(num) - 1
      $('.put' + num).focus()
    }
  })
})
</script>
</head>
<body>
  <section class="inp">
    <input type="text" name="" class="put1" maxlength="1" placeholder="0" />
    <input type="text" name="" class="put2" maxlength="1" placeholder="0" />
    <span>.</span>
    <input type="text" name="" class="put3" maxlength="1" placeholder="0" />
    <input type="text" name="" class="put4" maxlength="1" placeholder="0" />
    <span>%</span>
  </section>
</body>
</html>

上面的代码实现了我们的要求,下面介绍一下它的实现过程。
一.代码注释:
(1).$(document).ready(function () {}),当文档结构完全加载完毕再去执行函数中的代码。
(2).$('.inp>input').keypress(function (event) {}),为input元素注册keypress事件处理函数。
(3).var num = $(this).attr('class').substring(3),获取input元素class属性值最后一个数字字符。
(4).num = parseInt(num) + 1,数字加1,也就是下一个input元素的class属性值最后一个数字值。
(5).$('.put' + num).focus(),下一个input元素获取焦点。
上面介绍的是填写的时候能够实现下一个元素自动获取焦点,后面的代码实现的是删除的时候,上一个元素自动获取焦点,原理是一样的,更多的内容可以参阅相关阅读,或者留言。
二.相关阅读:
(1).keypress事件可以参阅jQuery keypress事件一章节。
(2).keyCode可以参阅javascript event.keyCode属性一章节。
(3).substring()可以参阅javascript substring()一章节。
(4).parseInt()可以参阅javascript parseInt()一章节。

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们|手机版|小黑屋| 蚂蚁部落 ( 鲁ICP备10022556号-3 )

GMT+8, 2017-2-23 17:24 , Processed in 0.081921 second(s), 24 queries .

Powered by Discuz! X3.2 Licensed

Copyright © 2012-2017 Design: 蚂蚁部落

快速回复返回顶部 返回列表