JavaScript日期问题应显示无效日期的错误

时间:2016-01-08 09:00:37

标签: javascript jquery date

我正在写一个html文件来接受日期输入。我使用日期选择器来选择日期,而不是从日期选择器中选择日期,如果用户在文本字段中手动键入日期为ex:09/31/16我需要向用户提供日期无效的信息日期。但是我在下面给出的代码是在2016年10月1日创建日期对象时。如果我将日期转换为ISOString,它将显示为9月30日。但我想要的输出是将消息作为"无效的日期"显示给浏览器。请帮助我,因为我必须解决这个问题,因为我将在开发期间在许多地方使用日期。谢谢。

<html lang="en">
    <head>
        <meta charset="utf-8">
        <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.10.2/jquery.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
        <script>
            $(function () {
                $("#datepicker").datepicker();
            });
            function verifyDate() {
                var d = new Date($("#datepicker").val());
                console.log(d);
                var d = new Date($("#datepicker").val()).toISOString();
                console.log(d);
            }
        </script>
    </head>
    <body>
        <p>Date: <input type="text" id="datepicker" onblur="verifyDate()"></p>
    </body>
</html>

1 个答案:

答案 0 :(得分:0)

如果您想获得用户选择的日期,您的代码应该是:

<html lang="en">
<head>
 <meta charset="utf-8">
  <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.10.2/jquery.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
    <script>
      $(function() {

      $("#datepicker").datepicker({
             onSelect: function(){ 
               var dateValue = $(this).datepicker('getDate'); 
             console.log(dateValue);
        }
       });  

     });       
    </script>    
    </head>
    <body>    
 <p>Date: <input type="text" id="datepicker" ></p>  

</body>