Jquery UI datepicker setdate不适用于一个datepicker

时间:2013-01-10 07:53:20

标签: jquery-ui

我有2个日期选择器,一个用于dateend,另一个用于datestart。 当你点击它时,我在html中有一个按钮,将出现一个对话框形式。 然后询问数据并填充模态形式的元素。模态形式具有日期结束和日期开始。但似乎datestart是唯一填充的。请帮助。我真的不知道出了什么问题,坚持了4天以上

<script type="text/javascript">
$(document).ready(function () {
    $("#dialog-form").dialog({
        autoOpen: false,
        show: "drop", //explode
        hide: "clip",
        autoResize: true,
        height: '500',
        width: 'auto',
        draggable: false,
        modal: true,
        resizable: false
    });
    $('input[type="button"]').click(function () {
        var buttonHolder = $('input[type="button"]');
        $("#dialog-form").dialog("open");
        $("#timeStart").timepicker({});
        $("#dateStart").datepicker({
            defaultDate: "+1w",
            dateFormat: "yy/mm/d",
            changeMonth: true,
            changeYear: true,
            numberOfMonths: 3,
            minDate: new Date(), // min date should be date of today or the date which he set as startdate
            onClose: function () { //selectedDate should be value. i think. problem lies in the selected.
                $("#dateEnd").datepicker("option", "minDate", $(this).val());
            }
        });
        $("#dateEnd").datepicker({
            defaultDate: "+1w",
            dateFormat: "yy/mm/d",
            changeMonth: true,
            changeYear: true,
            numberOfMonths: 3,
            onClose: function () {
                $("#dateStart").datepicker("option", "maxDate", $(this).val()); //$(this).val()
            }
        });
        $.ajax({
            type: "POST",
            dataType: "json",
            url: "<?php echo site_url('ajax/getEventOfModal'); ?>",
            data: {
                id: $(this).attr('id'),
                username: "<?php echo $this->session->userdata('email'); ?>"
            },
            success: function (data) {
                $("#event_id").attr('value', buttonHolder.attr('id'));
                $("#event_name").attr('value', data['name']);
                $("#event_loc").text(data['loc']);
                $("#event_desc").text(data['desc']);
                $("#timeStart").timepicker('setTime', data['timeStart']);
                var queryDate = data['dateStart'],
                    dateParts = queryDate.match(/(\d+)/g)
                    realDate = new Date(dateParts[0], dateParts[1] - 1, dateParts[2]); // months are 0-based!
                $('#dateStart').datepicker('setDate', realDate);
                var queryDate2 = data['dateEnd'],
                    dateParts2 = queryDate2.match(/(\d+)/g)
                    realDate2 = new Date(dateParts2[0], dateParts2[1] - 1, dateParts2[2]); // months are 0-based!
                $('#dateEnd').datepicker('setDate', realDate2);
            }
        });
    });
});
</script>

1 个答案:

答案 0 :(得分:0)

尝试从jquery datepicker中删除defaultdate