function DATECHECK(){
var Year_xcjyrq=new Date();
var Year_jyrq=new Date();
Year_xcjyrq=xcjyrq.value;//字符串赋值给Date类型对象,Year_xcjyrq就变成string类型了
Year_jyrq=jyrq.value;
if(Year_xcjyrq.getFullYear()==Year_jyrq.getFullYear())//Year_xcjyrq为string类型,出错
        Year_jyrq1.value=Year_jyrq.getFullYear();
alert("2个日期不能同年!");
return false;}改成:
function DATECHECK(){
var Year_xcjyrq=xcjyrq.value.split("-");
var Year_jyrq=jyrq.value.split("-");
if(Year_xcjyrq[0]==Year_jyrq[0]){
alert("2个日期同年!");
return false;
}else{
alert("2个日期不同年!");
return true;
}
}

解决方案 »

  1.   

    妥了,L@_@K<!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>
      <title> date.compare.html </title>
      <meta name="generator" content="editplus" />
      <meta name="author" content="" />
      <meta name="keywords" content="" />
      <meta name="description" content="" />
     </head>
    <body>
    <input id="jyrq" type="text" name="jyrq" value="2008-02-01" >
    <input id="xcjyrq" type="text" name="xcjyrq" value="2008-03-01">
    <input type="submit" onclick="dateCheck()">
    </BODY>
    <script type="text/javascript">
    <!--function convertToDateFormat(strDate)
    {
        if (strDate.indexOf("-")>0)
        {
            var temp = strDate.split("-");
            if (temp.length == 3)
            {
                strDate = temp[2] + "/" + temp[1] + "/" + temp[0];
            }
        }    return strDate;
    }function dateCheck()
    {
        var Year_xcjyrq=new Date(convertToDateFormat(xcjyrq.value));
        var Year_jyrq=new Date(convertToDateFormat(jyrq.value));
        //alert(Year_xcjyrq.getFullYear());
        //alert(Year_jyrq.getFullYear());
        if(Year_xcjyrq.getFullYear()==Year_jyrq.getFullYear())
        {
            alert("2个日期不能同年!");
            return false;
        }
    }//-->
    </script>
    </html>
      

  2.   

    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function DATECHECK()
    {
    var year1=jyrq.value;
    var year2=xcjyrq.value;
    if((left(year1,4)==left(year2,4))
    {
    alert("下次检验日期与检验日期不能同年!");
    return false;
    }
    }
    //-->
    </SCRIPT>
    <BODY>
    <INPUT id="jyrq" TYPE="text" NAME="jyrq" value="2009-02-01" >
    <INPUT id="xcjyrq" TYPE="text" NAME="xcjyrq" value="2008-02-01">
    <INPUT TYPE="button" onclick="DATECHECK()">
    </BODY>我想提取前4个字符进行判断,怎么 也有错啊
      

  3.   


    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function DATECHECK()
    {
    var year1=jyrq.value;
    var year2=xcjyrq.value;
    if(year1.substring(0,4) ==year2.substring(0,4))
    {
    alert("下次检验日期与检验日期不能同年!");
    return false;
    }
    else
    {
    alert("不同年同年!");
    return true;}
    }
    //-->
    </SCRIPT>
    <BODY>
    <INPUT id="jyrq" TYPE="text" NAME="jyrq" value="2009-02-01" >
    <INPUT id="xcjyrq" TYPE="text" NAME="xcjyrq" value="2008-02-01">
    <INPUT TYPE="button" onclick="DATECHECK()">
    </BODY>
      

  4.   

    js 中 没有 left 函数吗?
    那如果,我要从 右边取呢?
      

  5.   

    是的,js中没有left类的函数,有substring() 和substr()等函数,他们的参数不一样,实现的功能也不一样,但要求的功能用上面的两个函数可以实现substring 方法
    返回位于 String 对象中指定位置的子字符串。 strVariable.substring(start, end)
    "String Literal".substring(start, end)参数
    start指明子字符串的起始位置,该索引从 0 开始起算。end指明子字符串的结束位置,该索引从 0 开始起算。说明
    substring 方法将返回一个包含从 start 到最后(不包含 end )的子字符串的字符串。substring 方法使用 start 和 end 两者中的较小值作为子字符串的起始点。例如,strvar.substring(0, 3) 和 strvar.substring(3, 0) 将返回相同的子字符串。如果 start 或 end 为 NaN 或者负数,那么将其替换为0。子字符串的长度等于 start 和 end 之差的绝对值。例如,在 strvar.substring(0, 3) 和 strvar.substring(3, 0) 返回的子字符串的的长度是 3。 示例
    下面的示例演示了 substring 方法的用法。function SubstringDemo(){
       var ss;                         // 声明变量。
       var s = "The rain in Spain falls mainly in the plain..";   ss = s.substring(12, 17);   // 取子字符串。
       return(ss);                     // 返回子字符串。
    }
    ===================
    substr 方法
    返回一个从指定位置开始的指定长度的子字符串。stringvar.substr(start [,length ])参数
    stringvar必选项。要提取子字符串的字符串文字或 String 对象。start必选项。所需的子字符串的起始位置。字符串中的第一个字符的索引为 0。length可选项。在返回的子字符串中应包括的字符个数。说明
    如果 length 为 0 或负数,将返回一个空字符串。如果没有指定该参数,则子字符串将延续到 stringvar 的最后。示例
    下面的示例演示了substr 方法的用法。function SubstrDemo(){
       var s, ss;                // 声明变量。
       var s = "The rain in Spain falls mainly in the plain.";
       ss = s.substr(12, 5);  // 获取子字符串。
       return(ss);               // 返回 "Spain"。
      

  6.   

    建议楼主用 lihui_shine(浪尖赏花)function DATECHECK(){
    var Year_xcjyrq=new Date();
    var Year_jyrq=new Date();
    Year_xcjyrq=xcjyrq.value;//字符串赋值给Date类型对象,Year_xcjyrq就变成string类型了
    Year_jyrq=jyrq.value;
    if(Year_xcjyrq.getFullYear()==Year_jyrq.getFullYear())//Year_xcjyrq为string类型,出错
            Year_jyrq1.value=Year_jyrq.getFullYear();
    alert("2个日期不能同年!");
    return false;}改成:
    function DATECHECK(){
    var Year_xcjyrq=xcjyrq.value.split("-");
    var Year_jyrq=jyrq.value.split("-");
    if(Year_xcjyrq[0]==Year_jyrq[0]){
    alert("2个日期同年!");
    return false;
    }else{
    alert("2个日期不同年!");
    return true;
    }
    }