繁体   English   中英

在javascript中更改输入类型=日期的属性最小值

[英]Change attribute min of input type=date in javascript

我有两个类型为date的输入字段。

<input id="startdate" type="date" min='@DateTime.Now.AddDays(1).ToShortDateString()' onchange="handler(event)" />
<input id="enddate" type="date" min="@DateTime.Now.AddDays(2).ToShortDateString()" onchange="handler(event)" />

我希望终止日期的最短日期比开始日期中的选定日期早两天。 到目前为止,我使用脚本添加天数并选择属性min。

<script type="text/javascript">
        function handler(e) {
            var someDate = new Date($("#startdate").val());
            document.getElementById("enddate").setAttribute('min', addDays($("#startdate").val(),2));
        }
    </script>

    <script type="text/javascript">
        function addDays(date, days) {
            var result = new Date(date);
            result.setDate(result.getDate() + days);
            return result;
        }
    </script>

这个主张是行不通的。 有任何想法吗?

使用moment.js

<input id="startdate" type="date" min='' />
<input id="enddate" type="date" min="" />

<!-- import moment.js -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
<script>
(function(){
  $('#startdate').attr('min', moment().format('YYYY-MM-DD'))

  $('#startdate').on('change', function(e){
    var startDate = $(this).val();
    var endDate = moment(startDate).add(2, 'days').format('YYYY-MM-DD');
    $('#enddate').attr('min', endDate);
  })
})()
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM