判断是否为数字
发布网友
发布时间:2022-04-23 17:20
我来回答
共3个回答
热心网友
时间:2023-10-10 17:06
最简洁的方法是使用正则表达式,但以下方法更容易理解。
<html>
<title>验证数字</title>
<head>
<script language="javascript">
function check(){
var num=document.getElementById("num").value;
if(num==""){
alert("请填写内容");
return;
}
var goodChar = "0123456789"; //数字
var c;
for(var i=0;i<num.length;i++){//依次判断num中的字符
c=num.charAt(i);//取出num中的第i个字符
if(goodChar.indexOf(c) == -1){ //如果当前字符在goodChar中找不到匹配字符,说明它不是0-9之间的数字
alert("内容只能是数字");
return;
}
}
alert("验证通过");//这里就可以进行验证通过后的一系列动作了。
}
</script>
</head>
<body>
内容:<input type="text" id="num">
<input type="button" value="验证" onClick="check()">
</body>
</html>
注:goodChar.indexOf(c)方法返回goodChar中与c匹配的字符的位置,没有匹配项时返回-1。直接copy代码保存为xxx.htm文件即可进行测试(已经测试通过)。
如果用正则表达式,将check()函数改为:
function check(){
if(document.getElementById("num").value.match(/\d{12}$/)==null){
alert("内容只能是数字,且长度必须是12位!");
return;
}
alert("验证通过");
}
注:match(/\d{12}$/)中d表示数字,12表示允许的数字长度,这里仅仅是一个例子,正则表达式还是比较好用的,能够完成很多复杂的匹配,建议学习下。
热心网友
时间:2023-10-10 17:06
使用正则表达式
d
代表数字~~
热心网友
时间:2023-10-10 17:06
什么语言的啊?使用正则表达式判断啊