<script>
function test(){
var str=document.form1.text1.value;
var re=/^((\d+(.\d+)?)|(\d+\/[1-9]\d*))$/g;
return alert(re.test(str))
}
</script>
<form name="form1">
<input type=text name="text1" >
<input type="button" onclick="return test()">
</form>
function test(){
var str=document.form1.text1.value;
var re=/^((\d+(.\d+)?)|(\d+\/[1-9]\d*))$/g;
return alert(re.test(str))
}
</script>
<form name="form1">
<input type=text name="text1" >
<input type="button" onclick="return test()">
</form>
<script>
function test(){
var str=document.form1.text1.value;
var re=/^((([1-9]\d*|0)(.\d+)?)(\/([1-9]\d*|0)(.\d+)?)?)$/g;
return alert(re.test(str))
}
</script>
<form name="form1">
<input type=text name="text1" >
<input type="button" onclick="return test()">
</form>
<script>
function test(){
var str=document.form1.text1.value;
var re=new RegExp("^((([1-9]\d*|0)(.\d+)?)(/([1-9]\d*|0)(.\d+)?)?)$");
return alert(re.test(str))
}
</script>
<form name="form1">
<input type=text name="text1" >
<input type="button" onclick="return test()">
</form>
我验证没有问题呀。
返回false
alert('您输入的不是合法的数值');
return false;
}
var reg = /^\d+(?:\.\d+)?(?:\/\d+)?$/;
if(!reg.test(v))
alert('err');
}<input type="Text" onblur='test(this.value)' />
<script>
function test(){
var str=document.form1.text1.value;
var re=new RegExp("^(([1-9]\\d*|0)(.\\d+)?)(/([1-9]\\d*|0)(.\\d+)?)?$");
return alert(re.test(str))
}
</script>
<form name="form1">
<input type=text name="text1" >
<input type="button" onclick="return test()">
</form>
<input type="Text" onblur='test(this.value)'>function test(value)
{
var arr = value.split(",");
for(var i=0;i<arr.length;i++)
if(isNaN(eval(arr[i])))
return false;
return true;
}
function test(){
var str=document.form1.text1.value;
var re=/^((\d+(\.\d+)?)|(\d+\/[1-9]\d*))$/g;
return alert(re.test(str))
}
</script>
<form name="form1">
<input type=text name="text1" >
<input type="button" onclick="return test()">
</form>
alert(/^((\d+)|(\d+\.\d+)|([1-9]\d*\/\d+))$/.test(a))
}
cc("0")
cc("123")
cc("0.5")
cc("1/3")
cc("0")
cc("12.9")
cc("0.5555")
cc("1/334")
cc("1231/334")
分数考虑了分子不为0,小数这样的没考虑02.3
function test(){
var str=document.form1.text1.value;
var re=/^((([1-9]\d*|0)(\.\d+)?)(\/([1-9]\d*|0)(\.\d+)?)?)$/g;
return alert(re.test(str))
}
</script>
<form name="form1">
<input type=text name="text1" >
<input type="button" onclick="return test()" value="test">
</form>
17楼的提醒很对。
我原来的正则漏了一个转义字符
我在最开始写的基础上改动了一下
支持1.2/2.3,0.12,1/3等格式
但是写成012或者0012.1的格式就不正确了
这个.把我闹的。哎.............
function cc(a){
alert(/^((\d+)|([1-9]\d*\.\d+)|(0\.\d+)|([1-9]\d*\/\d+))$/.test(a))
}
cc("0")
cc("123")
cc("0.5")
cc("1/3")
cc("0")
cc("12.9")
cc("0.5555")
cc("1/334")
cc("1231/334")
cc("02.334")
alert(/^((\d+)|([1-9]\d*\.\d+)|(0\.\d+)|([1-9]\d*\/[1-9]\d*)|(0\/[1-9]\d*))$/.test(a))
}
单纯的表达式字符串就是:^\d*[\.\/]?\d*$
刚测试了一下,应该是这样的,好用的。我这里有一个简单的测试正则的网页,lz有兴趣可以跟我联系
element_wm(阿木) 这两位