最近碰到这样的问题,需要控制文本框中输入指定格式的数字,今天和大家分享其中一种方法。
效果:仅能输入0-100以内的一位小数,输入有误将提示并清空输入框。
一、利用鼠标移除事件,正则校验进行控制,方法如下:
<input type="text" id="num" onblur=" var reg = /^(((\d|[1-9]\d)(\.\d{1,1})?)|100|100.0|100.0)$/;var f = reg.test(this.value);if(!f){alert(‘您输入的数字不合法‘);this.value=‘‘;return;}"/>
二、为了增强可读性,可写成如下格式:
<input type="text" id="num" onblur="validateNum(this.value)"/>
function validateNum(this.value){
var reg = /^(((\d|[1-9]\d)(\.\d{1,1})?)|100|100.0|100.0)$/;
var f = reg.test(this.value);
if ( !f ){
alert(‘您输入的数字不合法‘);
this.value=‘‘;
return;
}
}