jquery Datepicker,将默认日期设置为范围的值

时间:2012-11-09 12:09:56

标签: jquery date datepicker jquery-ui-datepicker

如果我alert($(this).parents().find("span:first").html()),则会显示03/28/2011

如果我查看源代码<span id="ctl00_ContentPlaceHolder1_GridView1_ctl03_StDt">03/28/2011</span>

如果我在datepicker

中设置defaultDate
defaultDate: new Date($(this).parents().find("span:first").html()),

默认为12/31/1969

修改 在下面的vtortola解决方案的帮助下,我得到了它。我需要解析日期并检查空的范围。

        var myDate = null;
        var minDate = null;
        $(".StartDateImg").datepicker({
            beforeShow: function (input, inst) {
                myDate = null;
                if ($(this).parents().find("span:first").html().length > 1) {
                    myDate = $.datepicker.parseDate("mm/dd/yy", $(this).parents().find("span:first").html());
                    $(this).parents().find("input:first").datepicker('option', 'defaultDate', myDate);

                }
                minDate = null;
                if ($(this).parents().closest('tr').find('td:last').length > 1) {
                    minDate = $.datepicker.parseDate('mm/dd/yy', $(this).parents().closest('tr').find('td:last').html())
                    $(this).parents().find("input:first").datepicker('option', 'minDate', minDate);
                }
            },
            duration: '',
            showTime: false,
            constrainInput: false,
            onSelect: function (dateText) {
                $(this).parents().find("span")[0].innerHTML = dateText;
            }

        });

1 个答案:

答案 0 :(得分:2)

尝试:

 defaultDate:  $.datepicker.parseDate('dd/mm/yy', $(this).parents().find("span:first").text())

干杯。