就是类似于上面05,07,08,01,04这种格式,不一定从哪里复制,有可能也从记事本复制过来。然后Ctrl+v复制到输入框,怎么设置input框maxlength为2;并且化成这样的格式输入到各个输入框中
就是类似于上面05,07,08,01,04这种格式,不一定从哪里复制,有可能也从记事本复制过来。然后Ctrl+v复制到输入框,怎么设置input框maxlength为2;并且化成这样的格式输入到各个输入框中
JS:
$(document).on('keyup','input',function(e){
$(".input").removeAttr("maxlength");
var e = e || window.e;
if( e.ctrlKey==1 && e.keyCode == 86 ){
var data = $(this).val().split(",");
for(var i=0,len=data.length;i<len;i++){
var obj = $('.input[name="'+(i+1)+'"]')
obj.val(data[i]);
obj.attr("maxlength","2");
}
}
})
HTML:
<label for="num"></label>
<input name="num" type="text" id="num" value="001" size="5" />
<label for="t1"></label>
<input name="1" type="text" id="t1" size="3" class="input"/>
<label for="t2"></label>
<input name="2" type="text" id="t2" size="3" class="input"/>
<label for="t3"></label>
<input name="3" type="text" id="t3" size="3" class="input"/>
<label for="t4"></label>
<input name="4" type="text" id="t4" size="3" class="input"/>
<label for="t5"></label>
<input name="5" type="text" id="t5" size="3" class="input"/>
<input type="submit" name="button" id="button" value="提交" />
这是我原先写的,但是我觉得这种办法复制的时候卡顿那一下太明显了,另外还有就是在第二次再粘贴的时候,会有bug。所以想看看有没有其他更好的实现方式。因为我记得软件激活码的那个显示很流畅。我觉得js应该也是可以实现的。我这个用jquery写的
10 回答11.2k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
设置输入长度约束
引用jQuery3.0
html:
css:
某个区域粘贴以逗号隔开的数字字符
.paste绑定事件(但是我发现需要粘贴时候不灵啊,要粘贴2次才生效,不知道是不是jQ的问题?),所以我用change和keyup模拟paste了,可以输入半/全角的逗号
javascript: