.datepicker 日历选择不工作 100% 的时间

.datepicker calendar selection not working 100% of the time

这段代码似乎可以正常工作,除了当用户从#startdate 输入字段中选择一个新日期时,它只会在前 2 次更新#enddate 字段,而在第 3 次它什么都不做,不确定到底是什么原因造成的问题...如果有人能够发现问题

我使用以下导入,这就是我在记事本++中打开它们时每个导入顶部的内容

jquery-ui.css v1.11.2

jquery.js v1.10.2

jquery-ui.js v1.11.2

$(document).ready(function () {
    $("#enddate").datepicker({
        dateFormat: "dd-M-yy",
        onSelect: function (date){
            var dateliveend = $("#enddate").val();                  
            $('#dateliveend').html(dateliveend);    
        }
    });

    $("#startdate").datepicker({
        dateFormat: "dd-M-yy",
        minDate: 0,
        maxDate: 365,
        onSelect: function (date) {
            var enddate = $('#startdate').datepicker('getDate'); 
            var startdate = $('#startdate').datepicker('getDate'); 

            startdate.setDate(startdate.getDate()); 
            enddate.setDate(enddate.getDate() + 28); 
            $('#enddate').datepicker('setDate', enddate);               

            $('#enddate').datepicker('option', 'maxDate', enddate);
            $('#enddate').datepicker('option', 'minDate', startdate);
        }
    });
});

    <input type="text" id="startdate" name="startdate" 
           value=" <?php echo date('d-M-Y', strtotime('+0 day') + 36000); ?>" readonly />

    <input type="text" id="enddate" name="deadline" 
           value=" <?php echo date('d-M-Y', strtotime('+28 day')  +36000); ?>" readonly />

我制作了一个 fiddle http://jsfiddle.net/RzD5Z/25/ 向您展示了我遇到的奇怪行为

$('#enddate').datepicker({
    dateFormat: "dd-M-yy",
    minDate: 0,
    defaultDate: "+28d",
    maxDate: "+28d",

        });
$("#startdate").datepicker({
    dateFormat: "dd-M-yy",
    minDate: 0,
    maxDate: 365,
    onClose: function () {

        var enddate = $('#startdate').datepicker('getDate'); 
        var startdate = new Date(enddate); 

        enddate.setDate(enddate.getDate()+28); 

        $('#enddate').datepicker('destroy');
        $('#enddate').datepicker();
        $('#enddate').datepicker('setDate', enddate);               

$('#enddate').datepicker('option', {
                                    dateFormat: "dd-M-yy",
                                    minDate: startdate, 
                                    maxDate: enddate
                                    });                 

    }
});

HTML

<input type="text" id="startdate" readonly />

<input type="text" id="enddate" readonly />

这是解决方案,我认为 .datepicker 的初始化有问题,所以我在重新初始化之前将其销毁。参见 fiddle - 效果很好 http://jsfiddle.net/RzD5Z/33/