Javascript 此函数用于加载服务器-为什么?

Javascript 此函数用于加载服务器-为什么?,javascript,validation,Javascript,Validation,我有这个功能 这是注册页面的验证,需要检查日期是否有效 出于某种原因,它调用服务器并加载页面, 我想也许是date.getFullYear()做吧,但不是 谢谢 <script> function CheckDate (sender, args) { var date = document.getElementById("DateReg").toString(); var FirstS

我有这个功能

这是注册页面的验证,需要检查日期是否有效

出于某种原因,它调用服务器并加载页面, 我想也许是
date.getFullYear()
做吧,但不是

谢谢

<script>
          function CheckDate  (sender, args)
          {
              var date = document.getElementById("DateReg").toString();

              var FirstStop = DateReg.ToString().IndexOf("/");
              var LastStop = DateReg.ToString().LastIndexOf("/");

              var day="",month="",year="";
              var DateChar = DateReg.Text.ToCharArray();

              for (var i = 0; i < FirstStop; i++)
              {
                      day += DateChar[i];
              }

          for (var i = FirstStop + 1; i < LastStop; i++)
          {
              month += DateChar[i];
          }

          for (var i = LastStop+1; i < DateChar.Length; i++)
          {
              year += DateChar[i];
          }

          var date = new Date();
          var CurrentYear = date.getFullYear();



          args.IsValid = true;

          if (day < 1 || day > 31 || month < 1 || month > 12 || year > CurrentYear || year < CurrentYear - 120)
          {
              args.IsValid = false;
          }


          return args.IsValid;
          }

    </script> 

函数检查日期(发送方,参数)
{
var date=document.getElementById(“DateReg”).toString();
var FirstStop=DateReg.ToString().IndexOf(“/”);
var LastStop=DateReg.ToString().LastIndexOf(“/”);
var day=“”、month=“”、year=“”;
var DateChar=DateReg.Text.ToCharArray();
对于(变量i=0;i31 |月<1 |月>12 |年>当前年|年<当前年-120)
{
args.IsValid=false;
}
返回args.IsValid;
}
日期登记:

               <asp:TextBox ID="DateReg" runat="server" TextMode="Date"></asp:TextBox>

从这里打电话

试试这个:

function CheckDate  (sender, args)
{
    var date = document.getElementById("DateReg").value;
    date = date.split('/');
    var day= date[0] ,month= date[1], year= date[2];

    var date = new Date();
    var CurrentYear = date.getFullYear();

    args.IsValid = true;

    if (day < 1 || day > 31 || month < 1 || month > 12 || year > CurrentYear || year < CurrentYear - 120)
    {
        args.IsValid = false;
    }

    if(args.IsValid)
        document.getElementById("IdOfYourForm").submit();
    else
        return false;
}
函数检查日期(发送方,参数)
{
var date=document.getElementById(“DateReg”).value;
日期=日期。拆分('/');
var日=日期[0],月=日期[1],年=日期[2];
变量日期=新日期();
var CurrentYear=date.getFullYear();
args.IsValid=true;
如果(日<1 |日>31 |月<1 |月>12 |年>当前年|年<当前年-120)
{
args.IsValid=false;
}
如果(args.IsValid)
document.getElementById(“IdOfYourForm”).submit();
其他的
返回false;
}

id=“DateReg”的html元素是什么?我看不到变量DateReg的声明问题可能是您从
“submit”处理程序调用该函数,并且该处理程序不会阻止提交表单的默认浏览器操作。否,我从asp:Button调用它你能把代码放在调用这个函数的地方吗?