javascript-使用jQuery UI datepicker自定义范围内的特定禁用日期
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript-使用jQuery UI datepicker自定义范围内的特定禁用日期,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2382字,纯文字阅读大概需要4分钟。
内容图文
我正在使用jQuery UI datepicker作为用户请求参观学校的表格.巡回演出有一个日期范围,在此范围内,站点管理员可能会禁用某些预定日期.到目前为止没有问题:
/* array of booked dates generated from CMS backend */
var disabledDates = [
'2015-05-06',
'2015-05-08' // examples
];
$('[name="date_of_visit"]').datepicker({
minDate: '4/30/2015', // Range start
maxDate: '10/1/2015', // Range end
beforeShowDay: function(date) { // Disable custom dates
var string = jQuery.datepicker.formatDate('yy-mm-dd', date);
return [$.inArray(string, disabledDates) == -1];
}
});
我从这篇文章中获得了beforeShowDay代码:Jquery UI datepicker. Disable array of Dates
我知道我可以使用第二个参数将类添加到禁用的元素,但是它将其添加到所有禁用的日期,包括minDate和maxDate之外的日期:
07001: A function that takes a date as a parameter and must
return an array with:0: true/false indicating whether or not this date is selectable
1:
a CSS class name to add to the date’s cell or “” for the default
presentation
2: an optional popup tooltip for this dateThe function is called for each day in the datepicker before it is
displayed.
但是,客户要求仅“预定”日期具有视觉指示,表明该日期不可用(与默认的禁用状态不同).不会有很多,也许是4或5.这对我来说很有意义.
有什么方法可以仅自定义设置中的beforeShowDay函数禁用的日期,或者另一种实现我所需要的解决方案的方法? jsFiddle demo
解决方法:
卫斯理
我查看了您的需求并查看了您所需要的需求,我认为这也是我所需要的,因为它本身有点独特,所以我研究了代码并制作了您想要的东西.我在下面的代码中粘贴了一些相同的解释:
以下是Jquery代码:-
var disabledDates = [
'2015-05-06',
'2015-05-08'
];
$('input').datepicker({
minDate: '4/30/2015',
maxDate: '10/1/2015',
beforeShowDay: function(date){
var str = jQuery.datepicker.formatDate('yy-mm-dd', date);
var minDateArr = $(this).datepicker( "option", "minDate" ).split('/')
var minDate = new Date(minDateArr[2],minDateArr[0]-1,minDateArr[1]); //Don't remove the -1 from minDateArr[0]-1 as the Javascript dates starts with 0.
if ($.inArray(str, disabledDates) != -1){
return [false, 'special']
}
else if(date < minDate ){
return [false, 'not-special']
}
else{
return [true,"special"];
}
}
});
CSS中的一些操作:
.special span {
color: red !important; /* should only apply to may 6 and 8 */
}
.not-special span {
color: green !important;
}
最重要的是必须有一个输入标签:
<input>
以下是同样的Js Fiddle链接:-
http://jsfiddle.net/ckk6hzzu/
希望这是您所需要的,并希望对其他可以用于预订/预订站点的人有所帮助.
内容总结
以上是互联网集市为您收集整理的javascript-使用jQuery UI datepicker自定义范围内的特定禁用日期全部内容,希望文章能够帮你解决javascript-使用jQuery UI datepicker自定义范围内的特定禁用日期所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。