请高手帮我看一个JavaScript函数的问题。请帮忙解决

yaoshun1983 2007-07-24 04:30:02
我下面这个函数目的是为了验证和限制用户的输入必须为数字,而且数字的范围不能超出一定的范围。下面这个函数出现的问题是:我在现在在“文本框”里不论输入的是数字还是其它字符,都会弹出警告框“同志:请输入数字!”
不知是我正则有问题还是怎么了,反正请高手解决。

function simulateEvent()
{
showArea();
var outPortValue=document.getElementById("txtOutPort").value;
var digitalValue=document.getElementById("txtDigital").value;
var simulateValue=document.getElementById("txtSimulate").value;
//计算卡片数量 注意:此机型8路普通模拟卡上面可以附一张8路扩展普通模拟卡
var fourOutCard,eightOutCard,sixteenDigitalCard,eightSimulateCard;
eightOutCard=Math.floor(outPortValue%8>4?outPortValue/8+1:outPortValue/8);
fourOutCard=Math.floor(outPortValue%8>0&&outPortValue%8<=4?1:0);
sixteenDigitalCard=Math.floor(digitalValue%16>0?digitalValue/16+1:digitalValue/16);
eightSimulateCard=Math.floor(simulateValue%16>0?simulateValue/16+1:simulateValue/16);
var maxSimulate=(16-eightOutCard-fourOutCard-sixteenDigitalCard)*16;
var reg=/^\d{*}&/;
if(!reg.test(simulateValue))
{
window.alert("同志:请输入数字!")
return false;
}
else if(simulateValue>maxSimulate)
{
window.alert("模拟分机数量不能超出0-"+maxSimulate+"的范围!")
return false;
}
}
...全文
119 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
田想兵 2007-08-02
同志:正则表达式不是这样写地!
回复
田想兵 2007-08-02
建议你下个code architects regex tester小工具,可以帮你验证你的正则表达式,你写得真是一言难尽啊~~
回复
yaoshun1983 2007-08-02
应该是
ver reg=/^\d*$/;

的方法也可以.


谢谢各位!
回复
buxiangwei 2007-07-24
var reg=/^[0-9]$/;
回复
lovefootball 2007-07-24
/^\d+$/
回复
lovefootball 2007-07-24
if(!reg.test(simulateValue))
---》
if (!isNaN(simulateValue))
回复
相关推荐
发帖
.NET技术社区
创建于2007-09-28

5.8w+

社区成员

.NET技术交流专区
申请成为版主
帖子事件
创建了帖子
2007-07-24 04:30
社区公告
暂无公告