我想限制用户以(。)后的形式输入最多十进制的小数,并且用户允许输入减号。和一个仅接受数字的文本字段。
<input type="text" name="debet[]" placeholder="debet" class=" money" value="0"/>
脚本:
$('body').on('focus',".money", function(){
$(this).simpleMoneyFormat();
});
有人可以帮我吗?
答案 0 :(得分:0)
<input type="number" name="debet[]" placeholder="debet" class="money"/>
var timer;
$('input').keyup(function (){
clearTimeout(timer);
timer = setTimeout(function (event) {
$('input').val(Number($('input').val()).toFixed(2))
}, 1000);
});
这应该做,它将每1秒触发一次事件
答案 1 :(得分:0)
您可以在输入时为let input = document.querySelector('input'); // input element
const checkRegex = /^\-?\d[\,\d]+\d\.\d{0,2}$/; // regex for the format: DDD,DDD.DD
input.addEventListener('blur', evt => {
if(checkRegex.test(input.value)) {
input.style.borderColor = '#080'; // indicates correct input
} else {
input.style.borderColor = '#F46'; // indicates wrong input
}
});
事件添加事件监听器。然后,使用正则表达式使用RegExp.test()
方法验证输入
{{1}}