input只能输入数字或两位小数

时间:2022-11-07 09:53:16

/**
 * [只能输入数字和两位小数]
 * 举例:<input type="text" onkeyup="num(this)" size="10"/>
 * @param obj
 * @returns
 * @data 20019-01-08
 */
function num(obj){
    obj.value = obj.value.replace(/[^\d.]/g,""); //清除"数字"和"."以外的字符
    obj.value = obj.value.replace(/^\./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'); //只能输入两个小数
}

限制只能输入数字

<input type="text" onkeyup='this.value=this.value.replace(/\D/gi,"")'/>

限制只能输入数字、字母和”-“

<input type="text" onkeyup='value=value.replace(/[^A-Za-z0-9\-]+/g,"")'/>