求一个简单的验证文本框是数字并且长度限制的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个数字就行了!!谢谢大哥哥们了!!! 展开
一个是电话,全部是数字:
我写的js代码不行,是这样的:
我用js代码
if(document.register.postcode.value.indexOf('0123456789')==-1)
{
window.alert("你的邮编格式不对!");
window.register.postcode.focus();
return false;
}
实现邮政编码的验证,为什么必须输入0-9全部数字才行呢??有什么好的解决办法吗?只要求6个数字就行了!!谢谢大哥哥们了!!! 展开
4个回答
展开全部
首先,你对 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>
"返回 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>
展开全部
邮政编码的验证(开头不能为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
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
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
转成字符串类型.再点length判断长度是否为6
追问
就把握原来的js改改吧。麻烦了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//判断输入框是否电子邮件,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;
}
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;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询