lz最好把你写的代码发出来,让大家看看
就可以给你指点了
这样说的话肯定是没写好了哦
js在html里可用就一定可以在php里可用的

解决方案 »

  1.   

    回四楼,写了,是分析两个日期的,同时还有时分要比较:表格叫myform,起始日期叫qssj,终止日期叫zzsj,起始时qssj_h,起始分qqsj_m,终止时zzsj_h,终止分zzsj_m起始日期可以不输入,终止日期在起始日期不输入时可以不输入。<script language="JavaScript">
    function checkform()
    {
    var i
    var str
    var temp
    var maxday
    if(myform.qssj.value.length>0 && myform.qssj.value.length<10)
    {
    alert("起始日期要么不输入,要么为十位长");
    return false;
    }
    if(myform.qssj.value.length>0 && myform.zzsj.value.length<10)
    {
    alert("终止日期必须十位长");
    return false;
    }
    if(myform.qssj.value.length>0)
    {
    if(myform.qssj.value.substring(4,5)!="-"||myform.qssj.value.substring(7,8)!="-")
    {
    alert("起始日期的第5位和第8位必须是连接号");
    return false;
    }
    for(i=0;i<myform.qssj.value.length;i++)
    {
    if(i!=4&&i!=7)
    {
    str=myform.qssj.value.substring(i,i+1);
    if(str<"0"||str>"9")
    {
    alert("起始日期除第5位和第8位必须是连接号外都不能输入数字以外的符号或字母");
    return false;
    }
    }
    }
    str=myform.qssj.value.substring(0,4);
    if(str<"1901"||str>"2099")
    {
    alert("起始日期的年应该在1901~2099之间");
    return false;
    }
    temp=str;
    str=myform.qssj.value.substring(5,7);
    if(str<"01"||str>"12")
    {
    alert("起始日期的月应该在01~12之间");
    return false;
    }
    if(str=="01"||str=="03"||str=="05"||str=="07"||str=="08"||str=="10"||str=="12")
    maxday="31";
    else
    if(str=="04"||str=="06"||str=="09"||str=="11")
    maxday="30";
    else
    {
    if(temp%4)
    maxday="28";
    else
    maxday="29";
    }
    str=myform.qssj.value.substring(8,10);
    if(str<"01"||str>maxday)
    {
    alert("起始日期的日应该在01~"+maxday+"之间");
    return false;
    }
    }
    if(myform.zzsj.value.length>0)
    {
    if(myform.zzsj.value.substring(4,5)!="-"||myform.zzsj.value.substring(7,8)!="-")
    {
    alert("终止日期的第5位和第8位必须是连接号");
    return false;
    }
    for(i=0;i<myform.zzsj.value.length;i++)
    {
    if(i!=4&&i!=7)
    {
    str=myform.zzsj.value.substring(i,i+1);
    if(str<"0"||str>"9")
    {
    alert("终止日期除第5位和第8位必须是连接号外都不能输入数字以外的符号或字母");
    return false;
    }
    }
    }
    str=myform.zzsj.value.substring(0,4);
    if(str<"1901"||str>"2099")
    {
    alert("终止日期的年应该在1901~2099之间");
    return false;
    }
    temp=str;
    str=myform.zzsj.value.substring(5,7);
    if(str<"01"||str>"12")
    {
    alert("终止日期的月应该在01~12之间");
    return false;
    }
    if(str=="01"||str=="03"||str=="05"||str=="07"||str=="08"||str=="10"||str=="12")
    maxday="31";
    else
    if(str=="04"||str=="06"||str=="09"||str=="11")
    maxday="30";
    else
    {
    if(temp%4)
    maxday="28";
    else
    maxday="29";
    }
    str=myform.zzsj.value.substring(8,10);
    if(str<"01"||str>maxday)
    {
    alert("终止日期的日应该在01~"+maxday+"之间");
    return false;
    }
    }
    if(myform.qssj.value>myform.zzsj.value)
    {
    alert("起始日期不能大于终止日期");
    return false;
    }
    if(myform.qssj.value.length>0)
    {
    if(myform.qssj_h.value.length<2)
    {
    alert("起始时间的小时必须输入两位");
    return false;
    }
    if(myform.qssj_m.value.length<2)
    {
    alert("起始时间的分钟必须输入两位");
    return false;
    }
    for(i=0;i<myform.qssj_h.value.length;i++)
    {
    str=myform.qssj_h.value.substring(i,i+1);
    if(str<"0"||str>"9")
    {
    alert("起始时间的小时不能输入数字以外的符号或字母");
    return false;
    }
    }
    for(i=0;i<myform.qssj_m.value.length;i++)
    {
    str=myform.qssj_m.value.substring(i,i+1);
    if(str<"0"||str>"9")
    {
    alert("起始时间的分钟不能输入数字以外的符号或字母");
    return false;
    }
    }
    if(myform.qssj_h.value>23)
    {
    alert("起始时间的小时不能大于23");
    return false;
    }
    if(myform.qssj_m.value>59)
    {
    alert("起始时间的分钟不能大于59");
    return false;
    }
    }
    if(myform.zzsj.value.length>0)
    {
    if(myform.zzsj_h.value.length<2)
    {
    alert("终止时间的小时必须输入两位");
    return false;
    }
    if(myform.zzsj_m.value.length<2)
    {
    alert("终止时间的分钟必须输入两位");
    return false;
    }
    for(i=0;i<myform.zzsj_h.value.length;i++)
    {
    str=myform.zzsj_h.value.substring(i,i+1);
    if(str<"0"||str>"9")
    {
    alert("终止时间的小时不能输入数字以外的符号或字母");
    return false;
    }
    }
    for(i=0;i<myform.zzsj_m.value.length;i++)
    {
    str=myform.zzsj_m.value.substring(i,i+1);
    if(str<"0"||str>"9")
    {
    alert("终止时间的分钟不能输入数字以外的符号或字母");
    return false;
    }
    }
    if(myform.zzsj_h.value>23)
    {
    alert("终止时间的小时不能大于23");
    return false;
    }
    if(myform.zzsj_m.value>59)
    {
    alert("终止时间的分钟不能大于59");
    return false;
    }
    }
    if(myform.qssj.value.length>0&&myform.zzsj.value.length>0&&myform.qssj.value==myform.zzsj.value)
    {
    if(myform.qssj_h.value + myform.qssj_m.value > myform.zzsj_h.value + myform.zzsj_m.value)
    {
    alert("日期相同时起始时间不能大于终止时间");
    return false;
    }
    }
    return true;
    }
    </script>
      

  2.   

    myform.qssj_h.value + myform.qssj_m.value 是连接还是相加?
      

  3.   

    JS代码本来就是属于客户端代码,它的执行要信赖于特定的浏览器的,搞不懂楼主说的放在PHP中的意义是什么?
    因为你放到服务器上,服务器在遇到这些JS代码时一样是会把它发送到客户端由客户浏览器来执行的,即使是你用
    <?php echo <script>...?>这种方式也是一样的所以建议还是写在JS库中,在客户端脚本中调用当然,你所担心的可靠性问题,倒不是什么问题。