jQuery Multidatepicker日历在日期选择之间打开和关闭

问题描述:

我正在使用Multiple-Dates-Picker-for-jQuery-UI。选择多个日期时,日历会在每个选择之间打开和关闭。我该如何解决这个问题,以便日历保持打开状态,直到选中所有日期,然后只在浏览器中的其他地方点击时关闭日历。jQuery Multidatepicker日历在日期选择之间打开和关闭

这里是我的代码:

<div class="row"> 
    <div class="span4"> 
     <h3>On <a href="#" class="popover-tip" rel="popover" 
       data-content="Pick a date for your night out." 
       data-original-title="Date"> 
      <i class="icon-question-sign"></i></a></h3> 
     <input type="text" class="datepicker"> 
// Date picker - allows for multi select 
$('.datepicker').multiDatesPicker({ 
    altField: '#altfield', 
    dateFormat: "DD, d MM, yy", 

    onBeforeShow: function() { 
     $('#inputDate').DatePickerSetDate($('#inputDate').val(), true); 
    }, 
    onChange: function (formated, dates) { 
     $('#inputDate').val(formated); 
     if ($('#closeOnSelect input').attr('checked')) { 
      $('#inputDate').DatePickerHide(); 
     } 
    } 
}); 

尝试从http://multidatespickr.sourceforge.net越来越MultiDatesPicker。那里的版本为我工作。

+1

感谢纳迦。我确实读过并尝试添加: \t table.ui-datepicker-calendar {border-collapse:separate;} \t .ui-datepicker-calendar td {border:1px solid transparent;} to the css as they建议,但它似乎没有影响 – Mac10

+1

我清理了这个答案,但我不明白它是如何帮助的,因为它看起来像指的是同一个项目。 –

晚答案我知道,但你可以删除线148:从jquery-ui.multidatespicker.js

(setTimeout('$("#'+inst.id+'").datepicker("show")',50);) 

如果我理解正确的话,你的要求是,你想要的日历永久开放。

为了实现这一点,您只需要更改div的输入。

在你的HTML而不是

<input type="text" class="datepicker"> 

把这个

<div class="datepicker" style="display:block;"></div> 

如果你想拥有它打开,同时选择的日期,然后关闭它,你将不得不显示/隐藏编程可能使用onfocus和onblur js事件或jQuery。

可能重复:

另一个答案指出,jQuery UI defaulting to today's date when it can't parse several dates。对于_setDateFromField的codefix在这里

Multiple date picker - months jumping problems