标题:【急!】javascript验证两个form中的文本框,调试的时候只有第一个生效怎么 ...
只看楼主
上岸人鱼
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-3-18
结帖率:100%
已结贴  问题点数:20 回复次数:13 
【急!】javascript验证两个form中的文本框,调试的时候只有第一个生效怎么回事?
javascript验证两个form中的文本框,调试的时候只有第一个生效怎么回事?
验证状态是过了,下面一个else一个都没过,纠结死了!

<script   language="javascript">
function   CheckForm()
{//--------------------------------------------------------------------------------验证“状态”
if   (document.form1.ZT.value.length   ==   0)  
 {  
    alert("ZT不能为空!");
    document.form1.ZT.focus();
    return   false;
}
else
    //var reg=/^[\u0391-\uFFE5]+$/;//验证用户名是否为中文//  /[^\x00-\x80]/这个只能验证纯中文
    var reg=/^[\u4e00-\u9fa5a-zA-Z0-9]+$/;
    //var reg=/([a-z][A-Z][0-9][\u4e00-\u9fa5])+/;
    //   /^[u4E00-u9FA5]+$/;//验证非法字符,输入可以为数字和英文
    var a=document.getElementById("zt").value;
    if(!reg.test(a))
     {
        alert("zt非法字符!!");
        document.form1.zt.focus();
        return   false;
   }
//---------------------------------------------------------------------------------验证"批号"
else
 if   (document.form1.PH.value.length   ==   0)  
 {  
    alert("PH不能为空!");
    document.form1.PH.focus();
    return   false;
}
else
    //var reg=/^[\u0391-\uFFE5]+$/;//验证用户名是否为中文//  /[^\x00-\x80]/这个只能验证纯中文
    var reg=/([a-z][A-Z][0-9][-])+/;
    //   /^[u4E00-u9FA5]+$/;//验证非法字符,输入可以为数字和英文
    var a=document.getElementById("PH").value;
    if(!reg.test(a))
     {
        alert("PH非法字符!!");
        document.form1.PH.focus();
        return   false;
   }
//--------------------------------------------------------------------------------验证form2的“挑片数”
else
if   (document.frm2.tp.value.length   ==   0)  
 {  
    alert("请输入挑片数!");
    document.frm2.tp.focus();
    return   false;
}
else
if   (document.frm2.tp.value   >=   48   ||   document.frm2.tp.value   <   1)
{  
alert("挑片数不能小于1大于48!");
document.frm2.tp.focus();
return   false;
}
else
    var reg=/^[0-9]*$/;//验证年龄是否为数字(正整数+0)或者/^\d+$/ /^\d*$/
    var a=document.getElementById("tp").value;
    if(!reg.test(a))
     {
        alert("提示:“挑片数”请输入数字!!");
        document.frm2.tp.focus();
        return   false;
   }
}
-->
</script>
2016-03-24 18:31
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:20 
先简化一下代码,看if判断是否与设想的一致。

活到老,学到老! http://www. E-mail:hu-jj@
2016-03-24 19:20
上岸人鱼
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-3-18
得分:0 
回复 2楼 hu9jj
我试过了,除了第一个留着,其他的都删了,调试的时候第一个可行,把第二个放上去的时候,第一个可行,第二个就不提示
2016-03-24 19:23
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:0 
if   (document.form1.ZT.value.length   ==   0)  
   {  
    alert("ZT不能为空!");
    document.form1.ZT.focus();
    return   false;
   }
else
    //var reg=/^[\u0391-\uFFE5]+$/;//验证用户名是否为中文//  /[^\x00-\x80]/这个只能验证纯中文
    var reg=/^[\u4e00-\u9fa5a-zA-Z0-9]+$/;
    //var reg=/([a-z][A-Z][0-9][\u4e00-\u9fa5])+/;
    //   /^[u4E00-u9FA5]+$/;//验证非法字符,输入可以为数字和英文
    var a=document.getElementById("zt").value;
    if(!reg.test(a))
       {
        alert("zt非法字符!!");
        document.form1.zt.focus();
        return   false;
       }
       //---------------------------------------------------------------------------------验证"批号"
    else
       if   (document.form1.PH.value.length   ==   0)  
          {  
          alert("PH不能为空!");
          document.form1.PH.focus();
          return   false;
          }
       else
          //var reg=/^[\u0391-\uFFE5]+$/;//验证用户名是否为中文//  /[^\x00-\x80]/这个只能验证纯中文
          var reg=/([a-z][A-Z][0-9][-])+/;
          //   /^[u4E00-u9FA5]+$/;//验证非法字符,输入可以为数字和英文
          var a=document.getElementById("PH").value;
          if(!reg.test(a))
             {
              alert("PH非法字符!!");
              document.form1.PH.focus();
              return   false;
              }
              //--------------------------------------------------------------------------------验证form2的“挑片数”
          else
              if   (document.frm2.tp.value.length   ==   0)  
                  {  
                  alert("请输入挑片数!");
                  document.frm2.tp.focus();
                  return   false;
                  }
              else
                  if   (document.frm2.tp.value   >=   48   ||   document.frm2.tp.value   <   1)
                       {  
                        alert("挑片数不能小于1大于48!");
                        document.frm2.tp.focus();
                        return   false;
                       }
                  else
                        var reg=/^[0-9]*$/;//验证年龄是否为数字(正整数+0)或者/^\d+$/ /^\d*$/
                        var a=document.getElementById("tp").value;
                        if(!reg.test(a))
                           {
                            alert("提示:“挑片数”请输入数字!!");
                            document.frm2.tp.focus();
                            return   false;
                            }
}
-->

活到老,学到老! http://www. E-mail:hu-jj@
2016-03-25 11:23
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:0 
我这样理了一遍,看能发现问题么

活到老,学到老! http://www. E-mail:hu-jj@
2016-03-25 11:24
上岸人鱼
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-3-18
得分:0 
回复 5楼 hu9jj
用你的,第一个也不提示了
2016-03-25 14:39
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:0 
以下是引用上岸人鱼在2016-3-25 14:39:54的发言:

用你的,第一个也不提示了
我并没有修改程序代码,仅仅是通过缩进代码来理顺逻辑结构,希望能够让你找出代码的逻辑问题。

[此贴子已经被作者于2016-3-25 16:53编辑过]


活到老,学到老! http://www. E-mail:hu-jj@
2016-03-25 16:51
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:0 
没有发现前三行(包括注释行)不涉及逻辑结构,没有粘贴过来吗。

活到老,学到老! http://www. E-mail:hu-jj@
2016-03-25 16:53
上岸人鱼
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-3-18
得分:0 
回复 8楼 hu9jj
头昏了,查不出来。。。。。。
2016-03-25 17:06
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:0 
可以检查一下每个if后面的判断是否符合需要。

活到老,学到老! http://www. E-mail:hu-jj@
2016-03-26 07:39



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-462885-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.048318 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved