9
我有一個選擇框,用戶可以選擇3個不同的店鋪揀選天。不應該可以在商店2和商店3選擇週末,而商店1則只能選擇週一至週六。jQuery的日期選擇器 - 刷新基於所選的選項
下面的JavaScript僅適用於第一個選秀權。如果您之後選擇另一家商店,它將堅持以前的選擇。
我使用$("#datepicker").datepicker("refresh");
試過(見how to refresh datepicker?),但沒有成功。我開始認爲問題在於別處。
的Javascript:
$(function() {
var setting, currentShop = 0;
/* Select box */
$('select#shop').change(function() {
(currentShop = $(this).val() == 1) ? loadDatePicker(setting = 'noSunday') : loadDatePicker(setting = 'noWeekends');
});
/* Datepicker */
function noSunday(date){
var day = date.getDay();
return [(day > 0), ''];
}
function loadDatePicker(setting) {
if(setting == 'noWeekends') {
$("#datepicker").datepicker({ beforeShowDay: $.datepicker.noWeekends, minDate: +2, maxDate: "+1M" });
}
if(setting == 'noSunday') {
$("#datepicker").datepicker({ beforeShowDay: noSunday, minDate: +2, maxDate: "+1M" });
}
$("#datepicker").datepicker("refresh");
}
});
HTML:
<select id="shop" name="shop">
<option value="0" selected="selected">Choose a shop</option>
<option value="1">1 (closed sundays)</option>
<option value="2">2 (closed weekends)</option>
<option value="3">3 (closed weekends)</option>
</select>
<label for="datepicker">Datepicker</label><input type="text" name="date" id="datepicker" value="" readonly="readonly" />
的jsfiddle: http://jsbin.com/ajavek/1/edit
如何刷新/有日期選擇正確應用這些設置?
看起來像一個解決方案。但是,每次銷燬它都感覺有點奇怪,但對於這個小小的項目,我想它是可以的。 – estrar 2013-03-08 15:12:52