求一个简单的验证文本框是数字并且长度限制的js代码

一个是验证邮政编码,长度是6,全部是数字:一个是电话,全部是数字:我写的js代码不行,是这样的:我用js代码if(document.register.postcode.v... 一个是验证邮政编码,长度是6,全部是数字:
一个是电话,全部是数字:
我写的js代码不行,是这样的:
我用js代码
if(document.register.postcode.value.indexOf('0123456789')==-1)
{
window.alert("你的邮编格式不对!");
window.register.postcode.focus();
return false;
}
实现邮政编码的验证,为什么必须输入0-9全部数字才行呢??有什么好的解决办法吗?只要求6个数字就行了!!谢谢大哥哥们了!!!
展开
 我来答
伊怡已憶9s
推荐于2016-07-13 · TA获得超过491个赞
知道小有建树答主
回答量:202
采纳率:0%
帮助的人:197万
展开全部
首先,你对 indexOf()的理解错误,indexOf 返回的是一个位置
"返回 String 对象内第一次出现子字符串的字符位置"
....
<html>
<head>
<title>验证邮政编码</title>
<script type="text/javascript">
function checkCode(str){

if(/\D/.test(str) ){ //用正则判断 如果为false ps: /\D/ 是正则表达式
//对test()方法有疑问的话,自己找找资料
alert("只能输入数字");
document.getElementById("code").value="";//清空文本框
document.getElementById("code").focus();//获得焦点
}
if((str.length> 6) || (str.length== 0)){//判断长度..
alert("只能小于6位或不能为空");
document.getElementById("code").value="";
document.getElementById("code").focus();
}
}
</script>
</head>
<body>
<form>
<div>请输入邮政编码:</div>
<input type="text" id="code" value="" onkeyup="checkCode(this.value)"; /> //可用onchange事件 onblur事件等
</form>
</body>
</html>
百度网友da83bbe
2011-05-01
知道答主
回答量:9
采纳率:0%
帮助的人:7.3万
展开全部
邮政编码的验证(开头不能为0,共6位)
var ss=document.getElementById('TextBox4').value;
var re= /^[1-9][0-9]{5}$/
if(re.test(ss))
document.getElementById('label5').innerText="";
else
{
document.getElementById('label5').innerText="邮政编码格式不正确!";
}
var r= /^13[012345789]{9}/ 以13开头的11位数,后9位不能出现数字6
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
david5901211
2011-04-28 · 超过38用户采纳过TA的回答
知道小有建树答主
回答量:210
采纳率:0%
帮助的人:81万
展开全部
转成字符串类型.再点length判断长度是否为6
追问
就把握原来的js改改吧。麻烦了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
foxaobe
2011-04-28 · TA获得超过331个赞
知道小有建树答主
回答量:897
采纳率:0%
帮助的人:617万
展开全部
//判断输入框是否电子邮件,id=数据源
function isMail(id)
{
var state = true;
var mailRex = /^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$/;
var mailNote = document.getElementById(id).value);

if(mailNote != '')
{
if(!mailRex.test(mailNote))
{
state = false;
}
else
{
state = true;
}

}
else
{
state = false;
}

return state;
}
追问
再我原来的基础上改改好吗,就是要求六位数字,不一定是0-9的全部,你写的这个函数太长了,,简单点吧!
追答
你写的根本就不是验证邮箱格式的、
var mailNote = document.getElementById(id).value;
if(mailNote.length >= 6 || mailNote.length == 0)
{
return false;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式