jQuery Datepicker:RANGE和INLINE

时间:2011-06-07 15:47:29

标签: jquery jquery-ui uidatepicker

我想结合使用jQuery UI Datepicker来显示一个范围,并显示这个内联。它具有两者的功能,但我无法将它们组合在一起。它只显示BOTH div中的范围,因此它无法按预期工作。这是代码:

JS:

<script type="text/javascript">
$(function(){
    var dates = $(" #to, #from" ).datepicker({
            defaultDate: "+1w",
            changeMonth: true,
            numberOfMonths: 2,
            onSelect: function( selectedDate ) {
                var option = this.id == "from" ? "minDate" : "maxDate",
                    instance = $( this ).data( "datepicker" ),
                    date = $.datepicker.parseDate(
                        instance.settings.dateFormat ||
                        $.datepicker._defaults.dateFormat,
                        selectedDate, instance.settings );
                dates.not( this ).datepicker( "option", option, date );
            }
        });
});
</script> 

HTML:

<div id="from"></div>
<div id="to"></div>

结果: enter image description here

正如您所看到的,有4个日历,它们可以单独工作,而不是仅仅两个月一起工作。

2 个答案:

答案 0 :(得分:6)

我遇到了同样的问题并使用以下代码:

<script>$(function() {
var dates = $( "#from, #to" ).datepicker({
    dateFormat: 'yy-mm-dd',
    onSelect: function(dateText, inst) {
        //set value
        $("#" + this.id + "_value").val(dateText);
        //set the min or max date
        var option = this.id == "from" ? "minDate" : "maxDate",
        instance = $( this ).data( "datepicker" ),
        date = $.datepicker.parseDate(
            instance.settings.dateFormat ||
            $.datepicker._defaults.dateFormat,
            dateText, instance.settings );
        dates.not( this ).datepicker( "option", option, date );
    }
});});</script>

<div id="from" class="datepicker"></div><input type="hidden" id="from_value" name="from_value"/><BR><BR><BR><div id="to" class="datepicker"></div><input type="hidden" id="to_value" name="to_value"/>
祝你好运!

答案 1 :(得分:2)

我们正在使用this script让日期范围选择正常工作。它运作良好