我使用的日期选择器(http://www.eyecon.ro/bootstrap-datepicker/)的引导插件。 当你去上面的链接有你如何使一个简单的登记入住退房形式的代码示例。在结帐日期选择器上,所有在入住日期选择器之前的日期都被禁用。引导日期选择器 - 禁用日期 - 多datepickers
我的网站上有多个签结账形式(多个房间)。每个房间你有一个登记入住和退房datepicker(夫妇)。所以我想下面的代码会做到这一点。
创建的页面(其可以是可变的)上找到的所有datepickers的数组。然后循环遍历数组,每对2 +应用代码。
if ($('.datepicker').length) {
//get all the datepickers
var IDs = [];
$(".main").find(".datepicker").each(function(){ IDs.push(this.id); });
for(j=0;j<IDs.length;j++){
var nowTemp = new Date();
var now = new Date(nowTemp.getFullYear(), nowTemp.getMonth(), nowTemp.getDate(), 0, 0, 0, 0);
var checkin = $('#'+ IDs[j]).datepicker({
onRender: function(date) {
return date.valueOf() < now.valueOf() ? 'disabled' : '';
}
}).on('changeDate', function(ev) {
var newDate = new Date(ev.date)
newDate.setDate(newDate.getDate() + 1);
checkout.setValue(newDate);
checkin.hide();
$('#'+ IDs[j+1])[0].focus();
}).data('datepicker');
var checkout = $('#'+ IDs[j+1]).datepicker({
onRender: function(date) {
return date.valueOf() <= checkin.date.valueOf() ? 'disabled' : '';
}
}).on('changeDate', function(ev) {
checkout.hide();
}).data('datepicker');
j++;
}
}
的outcoume是,如果我在页面上2个datepickers第二个按预期工作。第一个根本没有。如果我在它的工作页面上有1个日期选择器。
当添加警报(IDS),我得到的ID在被通缉的正确顺序的数组。
如果任何人都可以帮助... :)在此先感谢!