簡體   English   中英

日期選擇器,至少從一天開始

[英]Datepicker from and to minimum one day

我在玩耍以便使日期選擇器工作以用於保留目的。
下面的代碼幾乎完全按照我想要的方式工作。
問題是:我不希望“去”日期選擇器在未來的一天之內允許任何事情。

例如,如果“發件人”是13/09/25,我希望“發件人”至少是26/09/13。
我需要進行哪些更改才能按照自己的方式進行操作?

<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<link rel="stylesheet" href="http://jqueryui.com/datepicker//resources/demos/style.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
<script>

    $(function() {
        $( "#from" ).datepicker({
            defaultDate: "+0w",
            changeMonth: true,
            numberOfMonths: 1,
            minDate: -0,
            onClose: function( selectedDate ) {
                $( "#to" ).datepicker( "option", "minDate" , selectedDate );
        }
        });

        $( "#to" ).datepicker({
            defaultDate: "+0w",
            changeMonth: true,
            numberOfMonths: 1,
            onClose: function( selectedDate ) {
                $( "#from" ).datepicker( "option", selectedDate );
        }
        });
    });

</script>

<form action="?q=Reservation" method="post">
    <label for="from">From</label>
    <input type="text" id="from" name="from" />
    <label for="to">to</label>
    <input type="text" id="to" name="to" />

    First name: <input type="text" name="FirstName" value="Mickey"><br>
    Last name: <input type="text" name="LastName" value="Mouse"><br>
    <input type="submit" value="Submit">
</form>

您可以執行以下操作:

 $("#from").datepicker({
     defaultDate: "+0w",
     changeMonth: true,
     numberOfMonths: 1,
     minDate: -0,
     onClose: function (selectedDate) {
         var date2 = $('#from').datepicker('getDate');
         date2.setDate(date2.getDate() + 1);
         $("#to").datepicker("option", "minDate", date2);
     }
 });

因此,您可以從日期獲取當前日期,並使用setDate將日期添加一天,然后根據需要設置minDate選項。

演示: http//jsfiddle.net/IrvinDominin/tSrGx/

在我看來,您的做法正確,只需將一天添加到selectedDate:

var newDate = new Date(selectedDate.getFullYear(), selectedDate.getMonth(), selectedDate.getDate()+1);
$( "#to" ).datepicker( "option", "minDate" , newDate);

最簡單的方法是:

$( ".selector" ).datepicker({ minDate: -1, maxDate: 1 });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM