使用javascript验证日期?

时间:2011-12-26 04:54:27

标签: javascript

在Javascript中我试图为日期编写验证,用户必须选择未来的日期而不是过去的日期。我的代码似乎仅在我使用上个月的日期时才有效(例如26/11/2011)。这是我的剧本:

<script type="text/javascript" >
   function mydate()
   {           
       var d= new Date ();
       var day= d.getDate ();

       var mon=d.getMonth ();

       var year= d.getFullYear ();

       var dateformat= day+"/"+mon+"/"+year ;

       var get= document.getElementById("txt").value; 

       if(get >= dateformat )
       {
          alert ('yes valid');
       }
       else 
       {
            alert('Date should greater than to date ');
       }
   }
</script> 

1 个答案:

答案 0 :(得分:2)

您将日期值作为字符串进行比较。这是一个文本比较而不是日期比较,所以它除了巧合之外几乎从不工作。您需要将用户输入的日期值解析为Date数据类型并以此方式进行比较。

只要有可能,您应该避免自己编写日期操作代码,并尝试利用已知的工作解决方案,例如: jQuery UI Datepicker