我有这个文本域
<div class="name">
<label for="name">NSN</label>
<input type="text" id="NSN" name="name" />
</div>
我知道如何使用此Jquery
为数字输入添加彗差$("#NSN").on('keyup', function(){
var n = parseInt($(this).val().replace(/\D/g,''),10);
$(this).val(n.toLocaleString());
});
但是如何添加 - 在第4个数字之后,第6个之后以及第9个之后。
答案 0 :(得分:0)
添加了这些文件
<script src="../Js/inputmask.js"></script>
<script src="../Js/inputmask.extensions.js"></script>
<script src="../Js/inputmask.numeric.extensions.js"></script>
和以下代码设置NSN的掩码
var NSNselector = document.getElementById("NSN");
var im = new Inputmask("9999-999-9999-999");
im.mask(NSNselector);
有关屏蔽的详细信息,请参阅以下链接。 https://www.npmjs.com/package/jquery.inputmask
答案 1 :(得分:0)
试试这个:
<p>Masked on the keyup event</p>
<input type="text" id="phone" placeholder="1234-56-789-1234"/>
然后:
<script>
document.getElementById('phone').addEventListener('keyup', function (e) {
var x = e.target.value.replace(/\D/g, '').match(/(\d{4})(\d{2})(\d{3})(\d{4})/);
e.target.value = x[1] + '-' + x[2] + '-' + x[3]+ '-' + x[4];
});
</script>