<script>function check(obj){
if(!/^-?([1-9]\d*|[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$/.test(obj.value)){
alert("输入错误");
obj.focus();
}
}
</script>
<input onblur=check(this)> //所有的小数和整数
如果不要负数则把-?去掉即可。
if(!/^-?([1-9]\d*|[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$/.test(obj.value)){
alert("输入错误");
obj.focus();
}
}
</script>
<input onblur=check(this)> //所有的小数和整数
如果不要负数则把-?去掉即可。
if(!/^-?([1-9]\d*|[1-9]\d*\.\d+|0\.\d*[1-9]\d*|0?\.0+|0)$/.test(obj.value)){
alert("输入错误");
obj.focus();
}
}
</script>
<input onblur=check(this)> //所有的小数
更正了数字加小数点未判错的情况。
这里有一个问题啊,如果想输入的12.5,在输入到一个数字加一个点的时候(12.)就会报错。
上面哪个就是。
<script>function check(obj){
if(!/^-?([1-9]\d*|[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$/.test(obj.value)){
alert("输入错误");
obj.focus();
}
}
</script>
<input onblur=check(this)> //所有的小数
更正了数字加小数点未判错的情况。
<input type=text id=t1 onblur="IsFloat(this);">
<script language="javascript">
/*
功能:符点数判断,小数点后只能为两位
*/
function IsFloat(obj)
{
var reg = /^([0-9])*(.[0-9]{0,2})?$/g;
if(obj.value!="" && !reg.test(obj.value))
{
alert("Wrong!");
}
}
</script>
if(!/^-?([1-9]\d*|[0-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.\d*[1-9]|0)$/.test(obj.value)){
alert("输入错误");
obj.focus();
}
}
</script>
<input onblur=check(this)>
{
var TextBoxValue = obj.value;
if ( (window.event.keyCode == 47)||(window.event.keyCode < 46 || window.event.keyCode > 57 ))//only number and point
{
window.event.keyCode = 0 ;
}
else
{ //only one point
if (window.event.keyCode == 46)
{
if (TextBoxValue.indexOf('.') != -1 )
{
window.event.keyCode = 0 ;
}
}
else
{
//only two decimal
if (TextBoxValue.indexOf('.') != -1)
{
orgValue = TextBoxValue.split(".")
if (orgValue[1].length >= len )
window.event.keyCode = 0 ;
}
}
}
}<input onkepress=check(this,2)>