你可以这么做:
在函数最开始定义一个标志变量, flag=0.   然后在每一个if条件中加一个并的关系flag!=1;
在每个if语句中加入flag=1.例如:
                  flag=0
                 if (flag!=1 && (c>3000 || c<1000 ))
                       {
                             window.alert( "起始年超出范围")
                             flag=1                        }
                 if (flag!=1 &&  (d>12 || d<1))
                      {
                            window.alert( "起始月超出范围")
                            flag=1
                               }
虽然比较笨,但很实用.

解决方案 »

  1.   

    那不知道是不是调用的问题,我的调用语句如下:
     <input type="submit" name="Submit" value="提交" onclick="a=verify(form1);if (a) {lss(form1.start.value,form1.end.value,form1.num.value,form1.group.value);}">其中lss是另外一个函数。上段函数还不能实现的一个功能是:比如我在第一个文本框中已输入了值,而其它文本框没有输入值,确实可以校验到其它出错的文本框,但点击弹出框的确定按钮后,整个页面被刷新了,原先输入的信息也被清空,要怎么做才能即保留原先输入的信息,又校验到后面出错的地方呢?
      

  2.   

    type="submit" 改成type="button"
      

  3.   

    不知道楼主的这个form是否提交????
    如果想提交, type="button" 时, 当条件都满足时,加上document.form名.submit()
    type="submit"时, 
    <form name="form1" action="" method="" onsubmit="return verify(this.form)">
    不建议在事件处理中加入太多的js语句,程序风格不太好.
      

  4.   

    可以啦,谢谢各位了,特别是 slumcherry() ! :)