按钮为:<input type='submit' id='bsend' value='Send' class='input1' disabled="disabled">
解决方案 »
- 为什么alert(str[0])打印出来的是undefined
- 用javascript 实现json对象 增 删 改
- 下面是我的代码,我想实现的是动态生成div然后点击的时候,改div滚动,但是不行啊
- 如何改变当前窗口 resizable属性
- 请问关于arr.sort(compare)方法
- IE7标签页的问题
- JS 正則表達式匹配
- 抱..歉..只..剩..10..分..了... 请问在Html的字符串连接上单引号和双引号有啥区别. 都搞了好几天了, 还是没明白.
- 帮我改写一个函数(把错误处理去掉),马上给分
- 各位老大帮忙,我中了恶毒网站锁注册表
- 一个小问题,JavaScript的onclick事件在火狐下的不执行
- JS 操纵DOM问题,删除一个指定属性的元素
document.getElementById('bsend').disabled = false;
var check2 = true;
var check3 = true;
................
var check8 = true;
{
var check1 =true;
var check2 = true;
var check3 = true;
................
var check8 = true;
{
alert("ok");
document.getElementById('bsend').disabled = '';
}
else
{
alert("no");
document.getElementById('bsend').disabled = 'true';
}
变成
if(check1 | check2 | check3| check4| check5| check6| check7| check8)
{
alert("ok");
document.getElementById('bsend').disabled = '';
}
else
{
alert("no");
document.getElementById('bsend').disabled = 'true';
}
function check(n)
{
var result = false;
var val = document.getElementById(n).value;
switch(n)
{
case 'i1':
var reg =/^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i;
if(reg.test(val))
{
result=true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
result=false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>请输入正确的邮件地址";
}
break;
case 'i2':
var reg =/^\w{6,}$/;
if(reg.test(val))
{
result=true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
result=false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>密码要求长度6位以上";
}
break;
case 'i3':
if(val==document.getElementById('i2').value)
{
result=true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
result=false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>请输入与上面相面的密码";
}
break;
case 'i4':
var reg =/^[a-zA-Z\s]+$/;
if(reg.test(val))
{
result=true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
result=false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>只允许字母及空格";
}
break;
case 'i5':
var reg =/^[-\d]+$/;
if(reg.test(val))
{
result=true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
result=false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>只允许数及字符号-";
}
break;
case 'i6':
var reg =/^[-\d]+$/;
if(reg.test(val))
{
result=true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
result=false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>只允许数及字符号-";
}
break;
case 'i7':
var reg =/^[,.\w\s#]+$/;
if(reg.test(val))
{
result=true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
result=false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>只允许字符数字及标点符号";
}
break;
case 'i8':
if(val=='www.jnha.com')
{
result=true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
result=false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>请输入正确的验证信息";
}
}
return result;
}function checkData()
{
var result = true;
for(var i=1;i<=8;i++)
result = result && check("i"+i);
if(result)
{
alert("ok");
document.getElementById('bsend').disabled = 'false';
}
else
{
alert("no");
document.getElementById('bsend').disabled = 'true';
}
}//调用检查数据
checkData();
var check1 = false;
var check2 = false;
var check3 = false;
var check4 = false;
var check5 = false;
var check6 = false;
var check7 = false;
var check8 = false; 这8个变量最多有一个会并成 true而你的判断是用&&符号连接的, 就是说这8个变量都变成true才会执行.但这是不可能的
if(check1 && check2 && check3&& check4&& check5&& check6&& check7&& check8)
{
alert("ok");
document.getElementById('bsend').disabled = '';
}
else
{
alert("no");
document.getElementById('bsend').disabled = 'true';
} 永远也不会执行 到 document.getElementById('bsend').disabled = '';
所以
1. 要改成 用|| 连接 if(check1 || check2 || check3 || check4 ||check5 ||check6 ||check7 ||check8)
2. 9楼的方法也挺好
9 楼的改成这样就ok 了<script>
function check(n)
{
var checked = false;
var val = document.getElementById(n).value;
switch(n)
{
case 'i1':
var reg =/^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i;
if(reg.test(val))
{
checked =true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
checked =false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>请输入正确的邮件地址";
}
break;
case 'i2':
var reg =/^\w{6,}$/;
if(reg.test(val))
{
checked =true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
checked =false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>密码要求长度6位以上";
}
break;
case 'i3':
if(val==document.getElementById('i2').value)
{
checked =true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
checked =false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>请输入与上面相面的密码";
}
break;
case 'i4':
var reg =/^[a-zA-Z\s]+$/;
if(reg.test(val))
{
checked =true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
checked =false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>只允许字母及空格";
}
break;
case 'i5':
var reg =/^[-\d]+$/;
if(reg.test(val))
{
checked =true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
checked =false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>只允许数及字符号-";
}
break;
case 'i6':
var reg =/^[-\d]+$/;
if(reg.test(val))
{
checked =true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
checked =false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>只允许数及字符号-";
}
break;
case 'i7':
var reg =/^[,.\w\s#]+$/;
if(reg.test(val))
{
checked =true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
checked =false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>只允许字符数字及标点符号";
}
break;
case 'i8':
if(val=='www.jnha.com')
{
checked =true;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_right.gif'>";
}
else
{
checked =false;
document.getElementById(n+"_span").innerHTML = " <img src='img/check_error.gif'>请输入正确的验证信息";
}
}
if(checked )
{
alert("ok");
document.getElementById('bsend').disabled = '';
}
else
{
alert("no");
document.getElementById('bsend').disabled = 'true';
}
}
function checkData()
{
var result = true;
for(var i=1;i<=8;i++)
result = result && check("i"+i);
if(result)
{
alert("ok");
document.getElementById('bsend').disabled = 'false';
}
else
{
alert("no");
document.getElementById('bsend').disabled = 'true';
}
}这个函数里怎么可能检查另一个函数里的值呢?
<script>
function check(n)
{
var check1 = false;
var check2 = false;
var check3 = false;
var check4 = false;
var check5 = false;
var check6 = false;
var check7 = false;
var check8 = false;
var val = document.getElementById(n).value;
switch(n)
{
case 'i1':
var reg =/^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i;
if(reg.test(val))
{
check1=true;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
check1=false;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>请输入正确的邮件地址";
}
break;
case 'i2':
var reg =/^\w{6,}$/;
if(reg.test(val))
{
check2=true;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
check2=false;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>密码要求长度6位以上";
}
break;
case 'i3':
if((val==document.getElementById('i2').value)&&(document.getElementById('i2').value!=''))
{
check3=true;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
check3=false;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>请输入与上面相面的密码";
}
break;
case 'i4':
var reg =/^[a-zA-Z\s]+$/;
if(reg.test(val))
{
check4=true;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
check4=false;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>只允许字母及空格";
}
break;
case 'i5':
var reg =/^[-\d]+$/;
if(reg.test(val))
{
check5=true;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
check5=false;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>只允许数及字符号-";
}
break;
case 'i6':
var reg =/^[-\d]+$/;
if(reg.test(val))
{
check6=true;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
check6=false;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>只允许数及字符号-";
}
break;
case 'i7':
var reg =/^[,.\w\s#]+$/;
if(reg.test(val))
{
check7=true;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
check7=false;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>只允许字符数字及标点符号";
}
break;
case 'i8':
if(val=='www.jnha.com')
{
check8=true;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
check8=false;
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>请输入正确的验证信息";
}
}
var check=false;
for(var i=1;i<=8;i++)
{
if(document.getElementById("i"+i+"_span").innerHTML == "<img src='img/check_right.gif'>")
{check=check&&true;}
else
{check=check&&false;}
}
if(check)
{
document.getElementById('bsend').disabled = '';
}
else
{
document.getElementById('bsend').disabled = 'true';
}
}</script>
<script>
function check(n)
{
var val = document.getElementById(n).value;
switch(n)
{
case 'i1':
var reg =/^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i;
if(reg.test(val))
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>请输入正确的邮件地址";
}
break;
case 'i2':
var reg =/^\w{6,}$/;
if(reg.test(val))
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>密码要求长度6位以上";
}
break;
case 'i3':
if((val==document.getElementById('i2').value)&&(document.getElementById('i2').value!=''))
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>请输入与上面相面的密码";
}
break;
case 'i4':
var reg =/^[a-zA-Z\s]+$/;
if(reg.test(val))
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>只允许字母及空格";
}
break;
case 'i5':
var reg =/^[-\d]+$/;
if(reg.test(val))
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>只允许数及字符号-";
}
break;
case 'i6':
var reg =/^[-\d]+$/;
if(reg.test(val))
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>只允许数及字符号-";
}
break;
case 'i7':
var reg =/^[,.\w\s#]+$/;
if(reg.test(val))
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>只允许字符数字及标点符号";
}
break;
case 'i8':
if(val=='www.jnha.com')
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_right.gif'>";
}
else
{
document.getElementById(n+"_span").innerHTML = "<img src='img/check_error.gif'>请输入正确的验证信息";
}
}
var checked=true;
for(var i=1;i<=8;i++)
{
if(document.getElementById("i"+i+"_span").innerHTML == "<img src='img/check_right.gif'>")
{checked=checked&&true;}
else
{checked=checked&&false;}
}
if(checked)
{
document.getElementById('bsend').disabled = '';
}
else
{
document.getElementById('bsend').disabled = 'true';
}
}</script>
你验证是一次验证一个n,走来就全部赋值false,当然不会成功
每验证一个,就把value改为true最后在历遍所有的input即可.