我想强调或更改范围jQuery的日期选择器日期的CSS。 我希望用户能够点击开始日期和结束日期,并有该范围之间的所有日期一并突出。 我能够在单击时在此范围内创建日期的数组,但由于某些原因,我可以一个类不能添加到它更改CSS。
我怎么能取红枣进行阵列,然后添加一个CSS类,他们都改变背景/亮点?
任何帮助将不胜感激!
谢谢
我想强调或更改范围jQuery的日期选择器日期的CSS。 我希望用户能够点击开始日期和结束日期,并有该范围之间的所有日期一并突出。 我能够在单击时在此范围内创建日期的数组,但由于某些原因,我可以一个类不能添加到它更改CSS。
我怎么能取红枣进行阵列,然后添加一个CSS类,他们都改变背景/亮点?
任何帮助将不胜感激!
谢谢
好了,所以假设你已经在阵列中的用户所选择的日期。 您可以使用“beforeShowDay”选项指定将度过每一天在当前可见月份迭代函数,你的函数可以再比较对您阵列中的每个日期和应用CSS类,其中有一个匹配。
因此,例如初始化像这样的日期选择器...
jQuery(".cal").datepicker({
beforeShowDay: checkDates
})
和功能checkDates()会是这个样子(假设你的数组称为dateArray ....
function checkDates(theDate){
for(i=0;i<dateArray.length;i++){
if(dateArray[i].valueOf()===thedate.valueOf()){
return [false,"cssClass","title"];
}else return [true,""]
}
})
这将班级“的CssClass”申请的日期,如果日期包含在dateArray内
在return语句中的true / false位确定日期是可选择的,并标明“标题”该位是HTML title属性(提示)
铌。 这比较日期最近的毫秒,所以你可能需要修改它只是比赛日
我已经从日期为一个datepicker和一个最新的一个datepicker成功地做到了这一点,所以我修改了它的一个日期选择器。 以下是代码:
$(function () {
var today = new Date();
var thisYear = (today).getFullYear();
var fromDate = '1/1/2000' //this is the initial from date to set the datepicker range
var toDate = '1/7/2000' // this is the initial to date to set the datepicker range
//... initialize datepicker....
},
beforeShowDay: function(date){
//if the date is in range
if (date >= fromDate && date <= toDate) {
return [true, 'ui-individual-date', '']; //applies a css class to the range
}
else {
return [true, '', ''];
}
},
onSelect: function (dateText, obj) {
//sets the new range to be loaded on refresh call, assumes last click is the toDate
fromDate = toDate;
toDate = new Date(dateText);
$(".classDp1").datepicker("refresh");
$(".classDp2").datepicker("refresh");
},
每次刷新beforeShowDay功能时间被称为新没有fromdate和todate范围。 具有功能以外的变量和内修改它们使每个点击应用从CSS高亮。