我试图使用jQuery datepicker突出显示日历中的某些日期。我在Mark Murphy的这个论坛上找到了以下代码,Highlight dates in specific range with jQuery's datepicker这个代码完美无缺,但代码中有一些我不理解的内容。我无法对原始答案发表评论,因为我没有足够的权限。
我想知道的是:
1)||的目的是什么? ''返回匹配日期的位(函数返回true)?
2)当函数返回false时,目的是什么?
$(document).ready(function() {
var dates = {'2012/6/4':'some description' , '2012/6/6':'some other description'};
$('#datepicker').datepicker({
beforeShowDay: function(date) {
var search = date.getFullYear() + "/" + (date.getMonth() + 1) + "/" + (date.getDate());
//console.log(search);
if (dates[search]) {
return [true, 'highlight', dates[search] || ''];
}
return [false, '', ''];
}
});
答案 0 :(得分:0)
1)dates[search] || ''
表示如果未定义dates[search]
,则会返回空字符串
2)return [false, '', '']
返回一个包含3个元素的数组:false,void string,void string
从JQueryUI网站返回的数组的定义:
http://api.jqueryui.com/datepicker/#option-beforeShowDay
函数将日期作为参数,并且必须返回一个数组 [0]等于true / false,表示此日期是否为 selectable,[1]等于CSS类名称或默认值为“” 演示文稿,以及[2]此日期的可选弹出工具提示。它是 在显示之前,在日期选择器中调用每一天。