var msg ;
var li_ok='<%=YSvoid.web_dir%>images/small/li_ok.gif';
var li_err='<%=YSvoid.web_dir%>images/small/li_err.gif'
var bname_m=false;
function init_reg(){
msg=new Array(
"请输入<%=YSvoid.Format_Mid_Num(33)%>-<%=YSvoid.Format_Mid_Num(28)%>位字符,英文、数字的组合。",
"备用。",
"请输入<%=YSvoid.Format_Mid_Num(26)%>位以上字符,不允许空格。",
"请重复输入上面的密码。",
"请输入<%=YSvoid.Format_Mid_Num(34)%>位以上字符为密码钥匙。",
"备用。",
"请输入您常用的电子邮箱地址。"
)
document.getElementById("d_uname").innerHTML=msg[0];
document.getElementById("d_upwd1").innerHTML=msg[2];
document.getElementById("d_upwd2").innerHTML=msg[3];
document.getElementById("d_upwd3").innerHTML=msg[4];
document.getElementById("d_email").innerHTML=msg[6];
}
init_reg();
function on_input(objname){
var strtxt;
var obj=document.getElementById(objname);
obj.className="d_on";
//alert(objname);
switch (objname){
case "d_uname":
strtxt=msg[0];
break;
case "d_upwd1":
strtxt=msg[2];
break;
case "d_upwd2":
strtxt=msg[3];
break;
case "d_upwd3":
strtxt=msg[4];
break;
case "d_email":
strtxt=msg[6];
break;
}
obj.innerHTML=strtxt;
}function out_uname(){
var obj=document.getElementById("d_uname");
var str=sl(document.getElementById("username").value);
var chk=true;
//alert(str);
if (str<<%=YSvoid.Format_Mid_Num(33)%> || str><%=YSvoid.Format_Mid_Num(28)%>){chk=false;}
if (chk){
obj.className="d_ok";
obj.innerHTML='用户名已经输入。';
document.getElementById("d_uname_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[0];
document.getElementById("d_uname_img").src=li_err;
}
return chk;
}function out_upwd1(){
var obj=document.getElementById("d_upwd1");
var str=document.getElementById("password").value;
var chk=true;
if (str=='' || str.length<<%=YSvoid.Format_Mid_Num(26)%> || str.length>20){chk=false;}
if (chk){
obj.className="d_ok";
obj.innerHTML='密码已经输入。';
document.getElementById("d_upwd1_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[2];
document.getElementById("d_upwd1_img").src=li_err;
}
return chk;
}function out_upwd2(){
var obj=document.getElementById("d_upwd2");
var str=document.getElementById("password2").value;
var chk=true;
if (str!=document.getElementById("password").value||str==''){chk=false;}
if (chk){
obj.className="d_ok";
obj.innerHTML='重复密码输入正确。';
document.getElementById("d_upwd2_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[3];
document.getElementById("d_upwd2_img").src=li_err;
}
return chk;
}function out_upwd3(){
var obj=document.getElementById("d_upwd3");
var str=sl(document.getElementById("passwd").value);
var chk=true;
//alert(str);
if (str<<%=YSvoid.Format_Mid_Num(34)%> || str>20){chk=false;}
if (chk){
obj.className="d_ok";
obj.innerHTML='密码钥匙已经输入。';
document.getElementById("d_upwd3_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[4];
document.getElementById("d_upwd3_img").src=li_err;
}
return chk;
}function out_email(){
var obj=document.getElementById("d_email");
var str=document.getElementById("email").value;
var chk=true;
if (str==''|| !str.match(/^[\w\.\-]+@([\w\-]+\.)+[a-z]{2,4}$/ig)){chk=false}
if (chk){
obj.className="d_ok";
obj.innerHTML='电子邮箱地址已经输入。';
document.getElementById("d_email_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[6];
document.getElementById("d_email_img").src=li_err;
}
return chk;
}function sl(st){
sl1=st.length;
strLen=0;
for(i=0;i<sl1;i++){
if(st.charCodeAt(i)>255) strLen+=2;
else strLen++;
}
return strLen;
}function val_name()
{
var username=document.reg_frm.username.value;
var email=document.reg_frm.email.value;
if (username=="" || email=="")
{
alert("请先填写您要注册的 用户名称 和 E-mail !");
if (username=="")
{ document.reg_frm.username.focus(); }
else
{ document.reg_frm.email.focus(); }
return false;
}
else
{
document.reg_frm.val_button.disabled=true;
document.val_name_frm.username.value=username;
document.val_name_frm.email.value=email;
document.val_name_frm.submit();
}
}//表单检测
function chk_reg(){
var chk=true
if (!out_uname()){chk=false}
if (!out_upwd1()){chk=false}
if (!out_upwd2()){chk=false}
if (!out_upwd3()){chk=false}
if (!out_email()){chk=false}
if(chk){
return true;
}
return false;
}function reg_check()
{
if (document.reg_frm.username.value=="")
{ alert("请填写您的 用户名称 !"); document.reg_frm.username.focus(); return false; }
if (document.reg_frm.password.value=="" || document.reg_frm.password2.value=="")
{ alert("请填写您的 登陆密码 和 确认密码 !"); document.reg_frm.password.focus(); return false; }
else
{
if (document.reg_frm.password.value != document.reg_frm.password2.value)
{ alert("登陆密码 和 确认密码 必须相同!"); document.reg_frm.password2.focus(); return false; }
}
if (document.reg_frm.passwd.value=="")
{ alert("请填写您的 密码钥匙 !"); document.reg_frm.passwd.focus(); return false; }
if (document.reg_frm.email.value=="")
{ alert("请填写您的 Email !"); document.reg_frm.email.focus(); return false; }
var spid=100020038;
var spName='YSvoid';
var spPwd='YSvoid';
var email=document.reg_frm.email.value;
var nickName=document.reg_frm.username.value;
var pwd=document.reg_frm.password.value;
doReg(spid,spName,spPwd,email,nickName,pwd);
}
-->这是一段注册表单的检测,可是不论怎么输入用户名的值。都报不符合要求!最后才看到str这个值是空的,没有传过来,而且密码项也是同样问题
var li_ok='<%=YSvoid.web_dir%>images/small/li_ok.gif';
var li_err='<%=YSvoid.web_dir%>images/small/li_err.gif'
var bname_m=false;
function init_reg(){
msg=new Array(
"请输入<%=YSvoid.Format_Mid_Num(33)%>-<%=YSvoid.Format_Mid_Num(28)%>位字符,英文、数字的组合。",
"备用。",
"请输入<%=YSvoid.Format_Mid_Num(26)%>位以上字符,不允许空格。",
"请重复输入上面的密码。",
"请输入<%=YSvoid.Format_Mid_Num(34)%>位以上字符为密码钥匙。",
"备用。",
"请输入您常用的电子邮箱地址。"
)
document.getElementById("d_uname").innerHTML=msg[0];
document.getElementById("d_upwd1").innerHTML=msg[2];
document.getElementById("d_upwd2").innerHTML=msg[3];
document.getElementById("d_upwd3").innerHTML=msg[4];
document.getElementById("d_email").innerHTML=msg[6];
}
init_reg();
function on_input(objname){
var strtxt;
var obj=document.getElementById(objname);
obj.className="d_on";
//alert(objname);
switch (objname){
case "d_uname":
strtxt=msg[0];
break;
case "d_upwd1":
strtxt=msg[2];
break;
case "d_upwd2":
strtxt=msg[3];
break;
case "d_upwd3":
strtxt=msg[4];
break;
case "d_email":
strtxt=msg[6];
break;
}
obj.innerHTML=strtxt;
}function out_uname(){
var obj=document.getElementById("d_uname");
var str=sl(document.getElementById("username").value);
var chk=true;
//alert(str);
if (str<<%=YSvoid.Format_Mid_Num(33)%> || str><%=YSvoid.Format_Mid_Num(28)%>){chk=false;}
if (chk){
obj.className="d_ok";
obj.innerHTML='用户名已经输入。';
document.getElementById("d_uname_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[0];
document.getElementById("d_uname_img").src=li_err;
}
return chk;
}function out_upwd1(){
var obj=document.getElementById("d_upwd1");
var str=document.getElementById("password").value;
var chk=true;
if (str=='' || str.length<<%=YSvoid.Format_Mid_Num(26)%> || str.length>20){chk=false;}
if (chk){
obj.className="d_ok";
obj.innerHTML='密码已经输入。';
document.getElementById("d_upwd1_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[2];
document.getElementById("d_upwd1_img").src=li_err;
}
return chk;
}function out_upwd2(){
var obj=document.getElementById("d_upwd2");
var str=document.getElementById("password2").value;
var chk=true;
if (str!=document.getElementById("password").value||str==''){chk=false;}
if (chk){
obj.className="d_ok";
obj.innerHTML='重复密码输入正确。';
document.getElementById("d_upwd2_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[3];
document.getElementById("d_upwd2_img").src=li_err;
}
return chk;
}function out_upwd3(){
var obj=document.getElementById("d_upwd3");
var str=sl(document.getElementById("passwd").value);
var chk=true;
//alert(str);
if (str<<%=YSvoid.Format_Mid_Num(34)%> || str>20){chk=false;}
if (chk){
obj.className="d_ok";
obj.innerHTML='密码钥匙已经输入。';
document.getElementById("d_upwd3_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[4];
document.getElementById("d_upwd3_img").src=li_err;
}
return chk;
}function out_email(){
var obj=document.getElementById("d_email");
var str=document.getElementById("email").value;
var chk=true;
if (str==''|| !str.match(/^[\w\.\-]+@([\w\-]+\.)+[a-z]{2,4}$/ig)){chk=false}
if (chk){
obj.className="d_ok";
obj.innerHTML='电子邮箱地址已经输入。';
document.getElementById("d_email_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[6];
document.getElementById("d_email_img").src=li_err;
}
return chk;
}function sl(st){
sl1=st.length;
strLen=0;
for(i=0;i<sl1;i++){
if(st.charCodeAt(i)>255) strLen+=2;
else strLen++;
}
return strLen;
}function val_name()
{
var username=document.reg_frm.username.value;
var email=document.reg_frm.email.value;
if (username=="" || email=="")
{
alert("请先填写您要注册的 用户名称 和 E-mail !");
if (username=="")
{ document.reg_frm.username.focus(); }
else
{ document.reg_frm.email.focus(); }
return false;
}
else
{
document.reg_frm.val_button.disabled=true;
document.val_name_frm.username.value=username;
document.val_name_frm.email.value=email;
document.val_name_frm.submit();
}
}//表单检测
function chk_reg(){
var chk=true
if (!out_uname()){chk=false}
if (!out_upwd1()){chk=false}
if (!out_upwd2()){chk=false}
if (!out_upwd3()){chk=false}
if (!out_email()){chk=false}
if(chk){
return true;
}
return false;
}function reg_check()
{
if (document.reg_frm.username.value=="")
{ alert("请填写您的 用户名称 !"); document.reg_frm.username.focus(); return false; }
if (document.reg_frm.password.value=="" || document.reg_frm.password2.value=="")
{ alert("请填写您的 登陆密码 和 确认密码 !"); document.reg_frm.password.focus(); return false; }
else
{
if (document.reg_frm.password.value != document.reg_frm.password2.value)
{ alert("登陆密码 和 确认密码 必须相同!"); document.reg_frm.password2.focus(); return false; }
}
if (document.reg_frm.passwd.value=="")
{ alert("请填写您的 密码钥匙 !"); document.reg_frm.passwd.focus(); return false; }
if (document.reg_frm.email.value=="")
{ alert("请填写您的 Email !"); document.reg_frm.email.focus(); return false; }
var spid=100020038;
var spName='YSvoid';
var spPwd='YSvoid';
var email=document.reg_frm.email.value;
var nickName=document.reg_frm.username.value;
var pwd=document.reg_frm.password.value;
doReg(spid,spName,spPwd,email,nickName,pwd);
}
-->这是一段注册表单的检测,可是不论怎么输入用户名的值。都报不符合要求!最后才看到str这个值是空的,没有传过来,而且密码项也是同样问题
解决方案 »
- fancybox插件的问题
- 锋利的jquery第八章代码改写
- jvavscript 抓取 vbscript 數值問題?
- 关于js正则表达式的非获取匹配的问题!!!
- 根据javascript权威指南实现的cookie存储api哪些地方可以优化
- 如何得到当月最后一日的日期值
- 怎么将兄弟iframe中内容alert出来?!
- ##########关于透明下拉菜单被文本框挡住的问题##########
- 如何用js调用c++当中的函数
- 关于Extjs的displayfield组件
- javascript区分小键盘和大键盘的回车!!!
- html页面中用了大量的javascript脚本,造成阅读页面很困难,有什么办法能让javascript脚本隐藏起来?
可以在 reg_check 函数里直接弹出 document.reg_frm.username.value 看有没有?
<table cellspacing=1 cellpadding=4 class=table_Home>
<tr><td class=td_Home colspan="3">
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<tr>
<td class=dtd_Home>{$tit}</td>
</tr>
</table>
<tr>
<td class=bg_Home align=center width='100%'>
<table border=0 width='480' cellspacing=0 cellpadding=2>
<form name=reg_frm action='?action=chk' method=post onsubmit="frm_submitonce(this);">
<input type=hidden name=chk value='yes'>
<input type=hidden name=reg value='yes'>
<tr><td width='65'><img src='../images/reg/li_none.gif' class='okimg' id='d_uname_img' />用户名称:</td><td width='150'><input type=text class=txt name=username size=20 maxlength=20 onfocus="on_input('d_uname');" onblur='out_uname();'></td>
<td width='265'><div id='d_uname' class='d_default'></div></td></tr>
<tr><td><img src='../images/reg/li_none.gif' class='okimg' id='d_upwd1_img' />登陆密码:</td><td><input type=password class=txt name=password size=20 maxlength=20 id="password" onKeyUp="ps.update(this.value);" onfocus="on_input('d_upwd1');" onblur='out_upwd1();'></td><td><div id='d_upwd1' class='d_default'></div></td></tr>
<tr><td>密码强度:</td><td>
<script language="javascript">
var ps = new PasswordStrength();
ps.setSize("200","20");
ps.setMinLength(5);
</script>
</td></tr>
<tr><td><img src='../images/reg/li_none.gif' class='okimg' id='d_upwd2_img' />确认密码:</td><td><input type=password class=txt name=password2 size=20 maxlength=20 onfocus="on_input('d_upwd2');" onblur='out_upwd2();'></td><td><div id='d_upwd2' class='d_default'></div></td></tr>
<tr><td><img src='../images/reg/li_none.gif' class='okimg' id='d_upwd3_img' />密码钥匙:</td><td><input type=text class=txt name=passwd size=20 maxlength=20 onfocus="on_input('d_upwd3');" onblur='out_upwd3();'></td><td><div id='d_upwd3' class='d_default'></div></td></tr>
<tr><td><img src='../images/reg/li_none.gif' class='okimg' id='d_email_img' />E - mail:</td><td><input type=text class=txt name=email size=20 maxlength=30 onfocus="on_input('d_email');" onblur='out_email();'></td><td><div id='d_email' class='d_default'></div></td></tr>
<tr><td>您的性别:</td><td> <input type=radio name=sex value='boy' checked class=bg_td> {$Male} <input type=radio name=sex value='girl' class=bg_td> {$Female} {$redx}</td></tr>
<tr><td>验 证 码:</td><td>{$GetCode}</td></tr>
<tr><td height=50 colspan=3 align=center><input class=btn type=button name=val_button value='验 证' class=bg_2 title='点击验证您填写的用户名是否可以注册' onclick="javascript:val_name();"> <input class=btn type=submit value='提 交 注 册' onclick="javascript:return reg_check();"> <input class=btn type=reset value='重新填写'></td></tr>
</form>
</table>
<table border=0 cellspacing=1 cellpadding=4 width='100%'>
<tr><td><hr size=1 color=#c0c0c0 class=table></td></tr>
<tr><td align=center><font class=blue><b>系统提示注意事项</b></font></td></tr>
</table>这个是页面!!!
那么再弹出 document.reg_frm.username 看是不是个对象
function out_uname(){
var obj=document.getElementById("d_uname");
var str=sl(document.getElementById("username").value);
var chk=true;
//alert(str);
if (str < <%=YSvoid.Format_Mid_Num(33)%> ¦ ¦ str> <%=YSvoid.Format_Mid_Num(28)%> ){chk=false;}
if (chk){
obj.className="d_ok";
obj.innerHTML='用户名已经输入。';
document.getElementById("d_uname_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[0];
document.getElementById("d_uname_img").src=li_err;
}
return chk;
}
这个函数出问题了.
document.getElementById("username"),这个好象不行吧,会有问题的吧,你后面不是用document.reg_frm.username得到吗?
我刚接触这方面!谁能帮我重新写一个也行啊!
var username = document.reg_frm.username.value;
var password = document.reg_frm.password.value;2.效验的时候
if(document.reg_frm.username.value.trim == ""){
alert("请填写您的用户名称!");
document.reg_frm.username.focus(); return false;
}
现在又出新问题了,我设置的是用户名是4-15个字节,可现在我输入一个字节,也执行true,(下面红色的)
function out_uname(){
var obj=document.getElementById("d_uname");
var str=document.reg_frm.username.value;
var chk=true;
//alert(str);
if (str<<%=YSvoid.Format_Mid_Num(33)%> || str><%=YSvoid.Format_Mid_Num(28)%>){chk=true;}
if (chk){
obj.className="d_ok";
obj.innerHTML='用户名已经输入。';
document.getElementById("d_uname_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[0];
document.getElementById("d_uname_img").src=li_err;
}
return chk;
}
YSvoid.Format_Mid_Num(28)是15
if (str < 4 ¦ ¦ str> 15 ){chk=true;}
if (chk){
obj.className="d_ok";
obj.innerHTML='用户名已经输入。';
document.getElementById("d_uname_img").src=li_ok;
}else{
obj.className="d_err";
obj.innerHTML=msg[0];
document.getElementById("d_uname_img").src=li_err;
}
chk什么时候等于false?
if (str < 4 ¦ ¦ str> 15 ){chk=true;} 应该是chk=false吧