填入的input值,在下面的input框中自动递增(不一定是纯数字)

weixin_41429466 2019-06-20 04:00:42
1,有n个input框,在第一个input框中,输入,例如A10001,在下面的input框中自动生成,A10002,A10003,A10004.........(A10+n)

...全文
340 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
河南棒小伙 2019-06-20
  • 打赏
  • 举报
回复
引用 1 楼 天际的海浪 的回复:

<div id="box">
	号1: <input type="text" value=""/><br />
	号2: <input type="text" value=""/><br />
	号3: <input type="text" value=""/><br />
	号4: <input type="text" value=""/><br />
	号5: <input type="text" value=""/><br />
	号6: <input type="text" value=""/><br />
</div>
<script type="text/javascript">
var input = document.querySelectorAll("#box input");
input[0].oninput = function () {
	var str = this.value;
	var ra = (str.match(/\d+/)||[""])[0];
	var num = parseInt(ra, 10);
	var before = ra.replace(/./g,"0");
	for (var i = 1; i < input.length; i++) {
		var sa = (num+i).toString();
		input[i].value = ra=="" ? str : str.replace(ra,before.slice(sa.length)+sa);
	}
}
</script>

我在仁兄的基础上略微修改了一些东西,主要是仁兄只检测了后面是数字的情况,我增加了中间也是数字的情况,只取最后的数字部分替换,献丑了

  <script type="text/javascript">
        var input = document.querySelectorAll("#box input");
        input[0].oninput = function () {
            var str = this.value;
            if (!/[0-9]/.test(str.slice(str.length - 1))) {
                for (var i = 1; i < input.length; i++) {
                    input[i].value = str;
                }
                return
            }
            var ra = (str.match(/\d+/g) || [""]);
            ra = ra[ra.length - 1]
            var num = parseInt(ra, 10);
            var before = ra.replace(/./g, "0");
            console.log(before, 'before')
            for (var i = 1; i < input.length; i++) {
                var sa = (num + i).toString();
                console.log(before, sa, before.slice(sa.length))
                input[i].value = ra == "" ? str : str.replace(ra, before.slice(sa.length) + sa);
            }
        }
    </script>
天际的海浪 2019-06-20
  • 打赏
  • 举报
回复

<div id="box">
	号1: <input type="text" value=""/><br />
	号2: <input type="text" value=""/><br />
	号3: <input type="text" value=""/><br />
	号4: <input type="text" value=""/><br />
	号5: <input type="text" value=""/><br />
	号6: <input type="text" value=""/><br />
</div>
<script type="text/javascript">
var input = document.querySelectorAll("#box input");
input[0].oninput = function () {
	var str = this.value;
	var ra = (str.match(/\d+/)||[""])[0];
	var num = parseInt(ra, 10);
	var before = ra.replace(/./g,"0");
	for (var i = 1; i < input.length; i++) {
		var sa = (num+i).toString();
		input[i].value = ra=="" ? str : str.replace(ra,before.slice(sa.length)+sa);
	}
}
</script>

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧