input框金额输入验证

时间:2021-08-25 11:39:11

金额输入要求:只能是数字且小数点后保留两位小数

html

<input type="text"  min="10" id="dc-moneyInput" />

js

<script>

function checknum(obj)
{
//如果输入非数字,则替换为''
obj.value = obj.value.replace(/[^\d\.]/g, '');
//必须保证第一个为数字而不是.
obj.value = obj.value.replace(/^\./g,'');
//前两位不能是0加数字
obj.value = obj.value.replace(/^0\d[0-9]*/g,'');
//保证只有出现一个.而没有多个.
obj.value = obj.value.replace(/\.{2,}/g,'.');
//保证.只出现一次,而不能出现两次以上
obj.value = obj.value.replace('.','$#$').replace(/\./g,'').replace('$#$','.');
//只能输入两位小数
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3');
} $('#dc-moneyInput').on('input',function () { checknum(this); ...... }) </script>