文本框数据验证
对于文本框数据,小数点、整数位数等的验证,整理~
function amount(inputText,nm,mm){//输入时函数 var thisVal=inputText.value; var spanTxt=$(inputText).parents(".pop-upBox").find("span"); function xLength(){ if(!isNaN(thisVal)){ var dot = thisVal.indexOf("."); if(dot<0){ if(nm==3&&thisVal.length==3){ if(thisVal>100){ Dialog.alert("值不能大于100%!",function(){ inputText.value=thisVal.substr(0, 2); spanTxt.text(inputText.value); }) } } if(thisVal.length>nm){ if(nm==3){ var msg="值不能大于100%!" Dialog.alert(msg,function(){ inputText.value=""; }); } else{ var msg="整数位不能超过"+nm+"位" Dialog.alert(msg,function(){ if(thisVal>1) { inputText.value=thisVal.substr(0, nm); spanTxt.text(inputText.value); } else{ inputText.value="0.00"; spanTxt.text("0.00"); } }); } } } if(dot>0&&nm==3&&thisVal>100){ Dialog.alert("值不能大于100%!",function(){ inputText.value=""; }) } } } var regStrs = [ ['^0(\\d+)$', '0.00'], //禁止录入整数部分两位以上,但首位为0 ['^(\\d+\\.\\d{'+mm+'}).+', '$1'],//禁止录入小数点后两位以上 [xLength(), '']//整数位限制 ]; for(i=0; i<regStrs.length; i++){ var reg = new RegExp(regStrs[i][0]); inputText.value = inputText.value.replace(reg, regStrs[i][1]); } inputText.value = inputText.value.replace(/[^\d.]/g,""); //清除“数字”和“.”以外的字符 inputText.value = inputText.value.replace(/^\./g,""); //验证第一个字符是数字而不是. inputText.value = inputText.value.replace(/\.{2,}/g,"."); //只保留第一个. 清除多余的. inputText.value = inputText.value.replace(".","$#$").replace(/\./g,"").replace("$#$","."); } function overFormat(inputText){//失去焦点函数 var thisVal= inputText.value; if(thisVal === '0'||thisVal === '0.'||thisVal==='.'){ thisVal = '0.00'; } if(/^\d+\.$/.test(thisVal)){//小数点之后没有数 inputText.value = thisVal.substring(0, thisVal.length - 1); } } $(function(){ //小数点限制两位 $(".nmPoint").keyup(function () { amount(this,10,2) }) $(".nmPoint").blur(function () { overFormat(this) }) //小数点限制六位 $(".wnmPoint").keyup(function () { amount(this,6,6) }) $(".wnmPoint").blur(function () { overFormat(this) }) //百分比验证 $(".pnmPoint").keyup(function () { amount(this,3,2) }) $(".pnmPoint").blur(function () { overFormat(this) }) $("input").keyup(function(){//禁止在文本框输入有闭合的</>标签 $(this).val(filter( $(this).val())); function filter(text) { text = text.replace(/\"/g, ""); text = text.replace(/\'/g, ""); text = text.replace(/\\/g, ""); text = text.replace(/<[^>]*>/g, ""); return text; } }) })