input限制只能输入数字和小数
小数.和-只能输入一次
第一种方法用到了jquery绑定事件
$('input').keypress(function(){
if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))
this.value=this.t_value;else this.t_value=this.value;
if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))
this.o_value=this.value
});
$('input').keyup(function(){
if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))
this.value=this.t_value;
else
this.t_value=this.value;
if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))
this.o_value=this.value
});
$('input').blur(function(){
if(!this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))
this.value=this.o_value;
else{
if(this.value.match(/^\.\d+$/))
this.value=0+this.value;
if(this.value.match(/^\.$/))
this.value=0;
this.o_value=this.value
}
});
或者
<input type=text onkeypress="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onkeyup="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onblur="if(!this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^\.\d+$/))this.value=0+this.value;if(this.value.match(/^\.$/))this.value=0;this.o_value=this.value}">