我正在制作一个应用程序,我必须在daterangepicker中显示多个可用日期(日期范围),其他日期应相应地禁用。目前我正在使用http://www.daterangepicker.com/#options,这是我的示例代码。
$('#config-demo').daterangepicker({
"ranges": {
"Range1": ["01/10/2017T07:37:40.792Z","01/10/2017T07:37:40.792Z"],
"Range2": ["01/20/2017T07:37:40.792Z","01/30/2017T07:37:40.792Z"]
},
"linkedCalendars": false,
"autoUpdateInput": true,
"showCustomRangeLabel": false,
"alwaysShowCalendars": true,
"startDate": "01/10/2017",
"endDate": "01/16/2017"
}, function(start, end, label) {
console.log("New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')");
});
在这里我已经定义了两个日期范围,它对我不起作用。我想在日历中显示所有可用日期(日期范围)。 像
第1日期范围: - 2017年10月1日至2017年1月20日
第2日期范围: - 2017年1月25日至2017年1月30日
这些日期应该在一个日历中。
答案 0 :(得分:0)
我已经创建了相同的功能,这里是一个示例代码: -
var date_ranges = {
"staff_availabilities":[
{"available_from":"2017/01/12","available_to":"2017/01/28","availibility_id":1},
{"available_from":"2017/01/21","available_to":"2017/02/19","availibility_id":1}
]
};
var i = 0;
var f_data = [];
var obj = {};
$.each(date_ranges.staff_availabilities, function( index, value ) {
var start_date = value.available_from;
var end_date = value.available_to;
var start_date_range = moment(start_date, "YYYY/MM/DD HH:mm:ss").format('MMMM D, Y');
var end_date_range = moment(end_date, "YYYY/MM/DD HH:mm:ss").format('MMMM D, Y');
obj[start_date_range+" - "+end_date_range] = [value.available_from , value.available_to];
i++;
});
$('#config-demo').daterangepicker({
"ranges":obj,
"linkedCalendars": false,
"autoUpdateInput": true,
"showCustomRangeLabel": false,
"alwaysShowCalendars": true,
locale: {
format: 'YYYY-MM-DD'
},
"startDate": mini_date,
"endDate": max_date
}, function(start, end, label) {
console.log("New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')");
});