1
Ajaxを使用して取得する日付の範囲を無効にしたいとします。私は次のようにしています -Jquery datepickerで日付範囲を無効にする方法
$("#date_frm").datepicker({
dateFormat: 'yy-mm-dd',
constrainInput: true,
beforeShow:function(input, inst) {
$.ajax({
type: "POST",
url: "/admin/get_time_span",
data: "",
success: function(data) {
disabled_day = data;
},
});
},
beforeShowDay: disableRangeOfDays
});
function disableRangeOfDays(d)
{
//var arr = "2012-04-19 to 2012-04-26,";
var arr = disabled_day.split(",");
var arr = arr.split(",");
var cnt = arr.length-1;
for(i=0; i<cnt; i++) {
arr1 = arr[i].split(" to ");
//create date for from_date
frm_dt = arr1[0].split('-');
//create date for to_date
to_dt = arr1[1].split('-');
if(d >= new Date(frm_dt[0],(frm_dt[1]-1),frm_dt[2]) &&
d <= new Date(to_dt[0],(to_dt[1]-1),to_dt[2])) {
return [false];
}
}
return [true,''];
}
これは初めてではなく動作します。最初に日付ピッカーを開くと、日付範囲が選択可能です。しかし、それを閉じてから再度開いた後は、日付範囲が無効になります。また、もし私が月を変更し、今月に戻ってきたら、それも働く。日付ピッカーを最初に開いたときの日付範囲を無効にするにはどうすればよいですか?また、毎月、日付範囲を取得して無効にする必要があります。これどうやってするの ?