我们已使用此插件实现了一个日期选择器作为预订流程的一部分 -
http://keith-wood.name/datepick.html
它基本上填充了一系列div,其中包含对应于日期列的列中的月份日期 - 我们遇到的问题是禁用星期日..
所以 - 我们试图用日期字符串检测短语sun,其代码如下 -
$('#calendar').datepick({
pickerClass: 'noPrevNext',
dateFormat: 'yyyy/mm/dd',
altField: '[name="delivery-date"]',
defaultDate: +7,
minDate: +1,
maxDate: +45,
changeMonth: false,
showTrigger: null,
onSelect: function(dates)
{
var jim = dates.indexOf("Sun");
if (jim >= 0)
{
alert('Sundays are not selectable');
}
}
});
但是我们收到错误声明'indexof(sun)不是函数'
任何人都可以提供任何指导!?
答案 0 :(得分:3)
正如我所看到的,您使用的是Keith Wood Datepicker插件,它与jquery UI插件非常相似。在这种情况下,您的onSelect
函数会收到日期对象,如下所示:
当选择每个日期时调用该函数并接收当前选择的日期(Date [])作为参数。
因此,您可以直接从getDay()
数组调用dates
方法:
onSelect: function(dates)
{
var jim = dates[0].getDay();
if (jim == 0)
{
alert('Sundays are not selectable');
$('#calendar').val("");
}
}
您的问题:dates
变量不是字符串,而是Date对象的数组。