我的js验证怎么不起作用了啊???

时间:2022-12-05 19:20:57
我的js验证怎么不起作用了啊???原来运行正常着,刚刚加了个验证码,怎么就不起作用了???

代码:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="inc/conn.asp"-->
<%dim strusername,comeurl
strusername=session("username")
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title></title>
<style type="text/css">
<!--
.inp{width:100px;border:1px solid #7f9db9;color:#052A5C}
.inp0{width:50px;border:1px solid #7f9db9;color:#052A5C}
.input_bot { font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 12px;
color: #000000;
margin: 1px;
padding: 1px;
clear: both;
background-color: #f7f7f7;
border-top: 1px none #CCCCCC;
border-right: 1px ridge #CCCCCC;
border-bottom: 1px ridge #ffffff;
border-left: 1px none #CCCCCC;
}
.pad {padding-left:5px; padding-bottom:3px; padding-top:3px; font-size:13px;}
.login_bg { font-size:20px; font-family:"华文新魏"; font-weight:bold; color:#CC9900; background-color:#D3F1FE}
.
.STYLE2 {font-size: 16px}
.bor {border-style:solid; border-width:1px; border-color:#D6F5F8;}
-->
</style>
<script language="javascript">
<!--
  function chknull(){
    if(frm_login.name.value==""){
      alert("你好象没有填写用户名!");
      frm_login.name.focus();
      return false;
    }
   if(frm_login.password.value==""){
      alert("你好象没有填写密码!");
      frm_login.password.focus();
      return false;
   if(frm_login.code.value==""){
      alert("你好象没有填写验证码!");
      frm_login.code.focus();
      return false;
   if(frm_login.code.value==Session("Verifycode")){
      alert("你好象没有填写验证码!");
      frm_login.code.focus();
      return false;
    }
 return true;
  }
  -->
</script>
</head>
<body>
<%if session("username")="" then              '未登录
%>
<form action="chklogin.asp" method="post" name="frm_login" onsubmit="return chknull();">
<table width="180" border="0" cellpadding="0" cellspacing="0" class="bor">
  <tr>
    <td colspan="2" align="center" valign="middle" ><div align="center" class="login_bg">会员登录/注册</div></td>
  </tr>
  <tr class="pad">
    <td width="48"  ><div align="justify" style="font-size:14px;">会员名</div></td>
    <td><input name="name" type="text" class="inp" size="18" />    </td>
  </tr>
  <tr class="pad">
    <td ><div align="justify" style="font-size:14px;">密  码</div></td>
    <td ><input name="password" type="password" class="inp" size="18" /></td>
  </tr>
  <tr class="pad">
    <td>验证码</td>
    <td><input name="code" type="text" class="inp0"  id="code" size="6" maxlength="4" />
      <IMG style="cursor:hand" src="Inc/verifycode.asp?n="&Timer  onClick="this.src=this.src;" align="absmiddle"/>
  </td>
    </tr>
  <tr class="pad">
    <td colspan="2">
    <input name="Submit" type="submit" class="input_bot" value="登录" />
        <input name="Submit2" type="button" class="input_bot" onclick="location.href='reguser.asp'" value="注册" />
      <input name="Submit3" type="button" class="input_bot" onclick="location.href='repass.asp?action=repass'" value="忘记密码" />      </td></tr>
</table>
</form>
<%
else            '已经登陆
%>
<table width="180" border="0" cellspacing="0" cellpadding="0" class="bor">
  <tr>
    <td colspan="2" align="center" valign="middle"><div align="center" class="login_bg">会员中心</div></td>
  </tr>
  <tr>
    <td colspan="2"><p align="center" style="font-size:14px;"><br />欢迎<font color="#FF9900"><%=session("username")%></font>来到团队</p>
      <p align="center" style="font-size:14px;">你的身份是<font color="#CC6600"><%
  set rs_user=server.CreateObject("adodb.recordset")
sql_user="select * from [user] where user_name='"& strusername &"'"
rs_user.Open sql_user,conn,1,3 
if not rs_user.eof then
response.Write(rs_user("user_type"))
 %></font><font color="#ff0000"><%
if rs_user("user_yanzheng")=0 then response.Write "(未认证)"  
if rs_user("user_yanzheng")=1 then response.Write "(已认证)"  
end if 
                    
%></font><br /><br /></p></td>
  </tr>
  <tr style="padding-bottom:5px; padding-top:5px; padding-left:2px; padding-right:2px;">
    <td class="pad"><div align="center"><a href="modpassword.asp">修改密码</a></div></td>
    <td class="pad"><div align="center"><%if rs_user("user_type")<> "普通会员" then%><a href="userinfo.asp?id=<%=rs_user("id")%>">我的资料</a><%else%><a href="userinfos.asp?id=<%=rs_user("id")%>">我的资料</a>
        <%end if%></div></td>
  </tr>
  <tr style="padding-bottom:5px; padding-top:5px; padding-left:2px; padding-right:2px;">
    <td width="90" class="pad"><div align="center"><a href="modinfo.asp">修改资料</a></div></td>
    <td width="90" class="pad"><div align="center"><a href="logout.asp">退出登录</a></div></td>
  </tr>
</table>
<%rs_user.close
set rs_user=nothing 
end if%>
</body>
</html>

16 个解决方案

#1


document.frm_login.name.value

#2


或者函数名称加上参数chknull(frm_login)
调用的时候onsubmit="return chknull(this);"

#3


if(frm_login.code.value==Session("Verifycode")){
      alert("你好象没有填写验证码!");
      frm_login.code.focus();
      return false;
    }

这个错误哦

可以改成
var yzm="<%=Session("Verifycode")%>";
if(frm_login.code.value==yzm){
      alert("你好象没有填写验证码!");
      frm_login.code.focus();
      return false;
    }

#4


好象不是这儿的问题
我不输任何信息登陆也提交到了验证页面,也就是说JS验证没有起作用????

#5


把js函数的代码注释掉,然后写上一行alert("test");看看能否弹出对话框,不能的话就是函数没被调用

可以弹出的话再去掉某几行代码的注释,然后在看看能否弹出对话框...

#6


给form field起名字的时候,尽量别用保留字。如name, submit等。

#7


经仔细查找,少写了两个"}":
function chknull()
{
if(frm_login.name.value=="")
{
alert("你好象没有填写用户名!");
frm_login.name.focus();
return false;
}
if(frm_login.password.value=="")
{
alert("你好象没有填写密码!");
frm_login.password.focus();
return false;
}
if(frm_login.code.value=="")
{
alert("你好象没有填写验证码!");
frm_login.code.focus();
return false;
}
if(frm_login.code.value==Session("Verifycode"))
{
alert("你好象没有填写验证码!");
frm_login.code.focus();
return false;
}
return true;
}

#8


因为你的js脚本有错误,所以程序不会去考虑执行你的js而直接提交了。
把你的验证先全部删除或屏蔽了,然后再一个一个添加测试。

#9


哦,我看看

#10


JS代码,是很娇弱的,有一处错误,它就不执行所有其他正确的代码。。。。。。。。。。。。。。

#11


用try catch捕捉错误就知道是什么原因了

#12


  if(frm_login.code.value== Session("Verifycode")){

js好像没有Session吧

#13


   if(frm_login.password.value==""){
      alert("你好象没有填写密码!");
      frm_login.password.focus();
      return false;
这里少个结束的大括号

#14


<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="inc/conn.asp"-->
<%dim strusername,comeurl
strusername=session("username")
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title></title>
<style type="text/css">
<!--
.inp{width:100px;border:1px solid #7f9db9;color:#052A5C}
.inp0{width:50px;border:1px solid #7f9db9;color:#052A5C}
.input_bot {    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
    color: #000000;
    margin: 1px;
    padding: 1px;
    clear: both;
    background-color: #f7f7f7;
    border-top: 1px none #CCCCCC;
    border-right: 1px ridge #CCCCCC;
    border-bottom: 1px ridge #ffffff;
    border-left: 1px none #CCCCCC;
}
.pad {padding-left:5px; padding-bottom:3px; padding-top:3px; font-size:13px;}
.login_bg { font-size:20px; font-family:"华文新魏"; font-weight:bold; color:#CC9900; background-color:#D3F1FE}
.
.STYLE2 {font-size: 16px}
.bor {border-style:solid; border-width:1px; border-color:#D6F5F8;}
-->
</style>
<script language="javascript">
<!--
  function chknull(){
    if(document.frm_login.name.value==""){
      alert("你好象没有填写用户名!");
      document.frm_login.name.focus();
      return false;
    }
   if(document.frm_login.password.value==""){
      alert("你好象没有填写密码!");
      document.frm_login.password.focus();
      return false;
    }
   if(document.frm_login.code.value==""){
      alert("你好象没有填写验证码!");
      document.frm_login.code.focus();
      return false;
    }
   if(document.frm_login.code.value==Session("Verifycode")){
      alert("你好象没有填写验证码!");
      document.frm_login.code.focus();
      return false;
    }
 return true;
  }
  -->
</script>
</head>
<body>
<%if session("username")="" then              '未登录
%>
<form action="chklogin.asp" method="post" name="frm_login" onsubmit="return chknull();">
<table width="180" border="0" cellpadding="0" cellspacing="0" class="bor">
  <tr>
    <td colspan="2" align="center" valign="middle" ><div align="center" class="login_bg">会员登录/注册</div></td>
  </tr>
  <tr class="pad">
    <td width="48"  ><div align="justify" style="font-size:14px;">会员名</div></td>
    <td><input name="name" type="text" class="inp" size="18" />    </td>
  </tr>
  <tr class="pad">
    <td ><div align="justify" style="font-size:14px;">密  码</div></td>
    <td ><input name="password" type="password" class="inp" size="18" /></td>
  </tr>
  <tr class="pad">
    <td>验证码</td>
    <td><input name="code" type="text" class="inp0"  id="code" size="6" maxlength="4" />
      <IMG style="cursor:hand" src="Inc/verifycode.asp?n="&Timer  onClick="this.src=this.src;" align="absmiddle"/>
      </td>
    </tr>
  <tr class="pad">
    <td colspan="2">
    <input name="Submit" type="submit" class="input_bot" value="登录" />
        <input name="Submit2" type="button" class="input_bot" onclick="location.href='reguser.asp'" value="注册" />
      <input name="Submit3" type="button" class="input_bot" onclick="location.href='repass.asp?action=repass'" value="忘记密码" />      </td></tr>
</table>
</form>
<%
else            '已经登陆
%>
<table width="180" border="0" cellspacing="0" cellpadding="0" class="bor">
  <tr>
    <td colspan="2" align="center" valign="middle"><div align="center" class="login_bg">会员中心</div></td>
  </tr>
  <tr>
    <td colspan="2"><p align="center" style="font-size:14px;"><br />欢迎<font color="#FF9900"><%=session("username")%></font>来到团队</p>
      <p align="center" style="font-size:14px;">你的身份是<font color="#CC6600"><%
      set rs_user=server.CreateObject("adodb.recordset")
sql_user="select * from [user] where user_name='"& strusername &"'"
rs_user.Open sql_user,conn,1,3 
if not rs_user.eof then
response.Write(rs_user("user_type"))
 %></font><font color="#ff0000"><%
if rs_user("user_yanzheng")=0 then response.Write "(未认证)"  
if rs_user("user_yanzheng")=1 then response.Write "(已认证)"  
end if 
                    
%></font><br /><br /></p></td>
  </tr>
  <tr style="padding-bottom:5px; padding-top:5px; padding-left:2px; padding-right:2px;">
    <td class="pad"><div align="center"><a href="modpassword.asp">修改密码</a></div></td>
    <td class="pad"><div align="center"><%if rs_user("user_type")<> "普通会员" then%><a href="userinfo.asp?id=<%=rs_user("id")%>">我的资料</a><%else%><a href="userinfos.asp?id=<%=rs_user("id")%>">我的资料</a>
        <%end if%></div></td>
  </tr>
  <tr style="padding-bottom:5px; padding-top:5px; padding-left:2px; padding-right:2px;">
    <td width="90" class="pad"><div align="center"><a href="modinfo.asp">修改资料</a></div></td>
    <td width="90" class="pad"><div align="center"><a href="logout.asp">退出登录</a></div></td>
  </tr>
</table>
<%rs_user.close
set rs_user=nothing 
end if%>
</body>
</html>

#15


楼上不知道解决没有?不过我增经遇到js验证不起作用的情况,
原因是我的ie浏览器安全级别设置过高.

#16


仔细看了,原来就是少了两个大括号

太大意了

#1


document.frm_login.name.value

#2


或者函数名称加上参数chknull(frm_login)
调用的时候onsubmit="return chknull(this);"

#3


if(frm_login.code.value==Session("Verifycode")){
      alert("你好象没有填写验证码!");
      frm_login.code.focus();
      return false;
    }

这个错误哦

可以改成
var yzm="<%=Session("Verifycode")%>";
if(frm_login.code.value==yzm){
      alert("你好象没有填写验证码!");
      frm_login.code.focus();
      return false;
    }

#4


好象不是这儿的问题
我不输任何信息登陆也提交到了验证页面,也就是说JS验证没有起作用????

#5


把js函数的代码注释掉,然后写上一行alert("test");看看能否弹出对话框,不能的话就是函数没被调用

可以弹出的话再去掉某几行代码的注释,然后在看看能否弹出对话框...

#6


给form field起名字的时候,尽量别用保留字。如name, submit等。

#7


经仔细查找,少写了两个"}":
function chknull()
{
if(frm_login.name.value=="")
{
alert("你好象没有填写用户名!");
frm_login.name.focus();
return false;
}
if(frm_login.password.value=="")
{
alert("你好象没有填写密码!");
frm_login.password.focus();
return false;
}
if(frm_login.code.value=="")
{
alert("你好象没有填写验证码!");
frm_login.code.focus();
return false;
}
if(frm_login.code.value==Session("Verifycode"))
{
alert("你好象没有填写验证码!");
frm_login.code.focus();
return false;
}
return true;
}

#8


因为你的js脚本有错误,所以程序不会去考虑执行你的js而直接提交了。
把你的验证先全部删除或屏蔽了,然后再一个一个添加测试。

#9


哦,我看看

#10


JS代码,是很娇弱的,有一处错误,它就不执行所有其他正确的代码。。。。。。。。。。。。。。

#11


用try catch捕捉错误就知道是什么原因了

#12


  if(frm_login.code.value== Session("Verifycode")){

js好像没有Session吧

#13


   if(frm_login.password.value==""){
      alert("你好象没有填写密码!");
      frm_login.password.focus();
      return false;
这里少个结束的大括号

#14


<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="inc/conn.asp"-->
<%dim strusername,comeurl
strusername=session("username")
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title></title>
<style type="text/css">
<!--
.inp{width:100px;border:1px solid #7f9db9;color:#052A5C}
.inp0{width:50px;border:1px solid #7f9db9;color:#052A5C}
.input_bot {    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
    color: #000000;
    margin: 1px;
    padding: 1px;
    clear: both;
    background-color: #f7f7f7;
    border-top: 1px none #CCCCCC;
    border-right: 1px ridge #CCCCCC;
    border-bottom: 1px ridge #ffffff;
    border-left: 1px none #CCCCCC;
}
.pad {padding-left:5px; padding-bottom:3px; padding-top:3px; font-size:13px;}
.login_bg { font-size:20px; font-family:"华文新魏"; font-weight:bold; color:#CC9900; background-color:#D3F1FE}
.
.STYLE2 {font-size: 16px}
.bor {border-style:solid; border-width:1px; border-color:#D6F5F8;}
-->
</style>
<script language="javascript">
<!--
  function chknull(){
    if(document.frm_login.name.value==""){
      alert("你好象没有填写用户名!");
      document.frm_login.name.focus();
      return false;
    }
   if(document.frm_login.password.value==""){
      alert("你好象没有填写密码!");
      document.frm_login.password.focus();
      return false;
    }
   if(document.frm_login.code.value==""){
      alert("你好象没有填写验证码!");
      document.frm_login.code.focus();
      return false;
    }
   if(document.frm_login.code.value==Session("Verifycode")){
      alert("你好象没有填写验证码!");
      document.frm_login.code.focus();
      return false;
    }
 return true;
  }
  -->
</script>
</head>
<body>
<%if session("username")="" then              '未登录
%>
<form action="chklogin.asp" method="post" name="frm_login" onsubmit="return chknull();">
<table width="180" border="0" cellpadding="0" cellspacing="0" class="bor">
  <tr>
    <td colspan="2" align="center" valign="middle" ><div align="center" class="login_bg">会员登录/注册</div></td>
  </tr>
  <tr class="pad">
    <td width="48"  ><div align="justify" style="font-size:14px;">会员名</div></td>
    <td><input name="name" type="text" class="inp" size="18" />    </td>
  </tr>
  <tr class="pad">
    <td ><div align="justify" style="font-size:14px;">密  码</div></td>
    <td ><input name="password" type="password" class="inp" size="18" /></td>
  </tr>
  <tr class="pad">
    <td>验证码</td>
    <td><input name="code" type="text" class="inp0"  id="code" size="6" maxlength="4" />
      <IMG style="cursor:hand" src="Inc/verifycode.asp?n="&Timer  onClick="this.src=this.src;" align="absmiddle"/>
      </td>
    </tr>
  <tr class="pad">
    <td colspan="2">
    <input name="Submit" type="submit" class="input_bot" value="登录" />
        <input name="Submit2" type="button" class="input_bot" onclick="location.href='reguser.asp'" value="注册" />
      <input name="Submit3" type="button" class="input_bot" onclick="location.href='repass.asp?action=repass'" value="忘记密码" />      </td></tr>
</table>
</form>
<%
else            '已经登陆
%>
<table width="180" border="0" cellspacing="0" cellpadding="0" class="bor">
  <tr>
    <td colspan="2" align="center" valign="middle"><div align="center" class="login_bg">会员中心</div></td>
  </tr>
  <tr>
    <td colspan="2"><p align="center" style="font-size:14px;"><br />欢迎<font color="#FF9900"><%=session("username")%></font>来到团队</p>
      <p align="center" style="font-size:14px;">你的身份是<font color="#CC6600"><%
      set rs_user=server.CreateObject("adodb.recordset")
sql_user="select * from [user] where user_name='"& strusername &"'"
rs_user.Open sql_user,conn,1,3 
if not rs_user.eof then
response.Write(rs_user("user_type"))
 %></font><font color="#ff0000"><%
if rs_user("user_yanzheng")=0 then response.Write "(未认证)"  
if rs_user("user_yanzheng")=1 then response.Write "(已认证)"  
end if 
                    
%></font><br /><br /></p></td>
  </tr>
  <tr style="padding-bottom:5px; padding-top:5px; padding-left:2px; padding-right:2px;">
    <td class="pad"><div align="center"><a href="modpassword.asp">修改密码</a></div></td>
    <td class="pad"><div align="center"><%if rs_user("user_type")<> "普通会员" then%><a href="userinfo.asp?id=<%=rs_user("id")%>">我的资料</a><%else%><a href="userinfos.asp?id=<%=rs_user("id")%>">我的资料</a>
        <%end if%></div></td>
  </tr>
  <tr style="padding-bottom:5px; padding-top:5px; padding-left:2px; padding-right:2px;">
    <td width="90" class="pad"><div align="center"><a href="modinfo.asp">修改资料</a></div></td>
    <td width="90" class="pad"><div align="center"><a href="logout.asp">退出登录</a></div></td>
  </tr>
</table>
<%rs_user.close
set rs_user=nothing 
end if%>
</body>
</html>

#15


楼上不知道解决没有?不过我增经遇到js验证不起作用的情况,
原因是我的ie浏览器安全级别设置过高.

#16


仔细看了,原来就是少了两个大括号

太大意了