2017-03-16 96 views
0

我在WordPress上使用Gravity Forms插件,其中包含jQuery的日期选择器。在我的一个表单中,我定义了一个minDate和一个maxDate,但在这个日期数组中,我需要禁用一个特定的日期(即4月23日星期日)。如何禁用Datepicker中的特定日期? (Gravity Forms)

我发现与noWeekend功能禁用整个周末的方式,但事情是:我需要保持周六22可用!

下面的代码我现在使用:

<script type="text/javascript"> 
gform.addFilter('gform_datepicker_options_pre_init', function(optionsObj, formId, fieldId) { 
    if (formId == 2 && fieldId == 4) { 
    optionsObj.minDate = '17/04/2017'; 
    optionsObj.maxDate = '29/04/2017'; 
} 

return optionsObj; 
}); 
</script> 

任何想法,我可以为了有23/04/2017作为选择禁用的补充呢?

感谢您的即将到来的帮助家伙!

回答

0

我相信你正在寻找这样的东西。请注意beforeShowDay'过滤器'函数,该函数对日历进程中显示的每个日期显示布尔真或假来显示它是否可用。我在你检查的日期使用了一个数组,以防你将来需要测试多个数据。

gform.addFilter('gform_datepicker_options_pre_init', function(optionsObj, formId, fieldId) { 
    if (formId == 2 && fieldId == 4) { 
     optionsObj.minDate = '17/04/2017'; 
     optionsObj.maxDate = '29/04/2017'; 

     optionsObj.beforeShowDay: function(date){ 
     var array = ["2017-04-23"]; 
     var string = jQuery.datepicker.formatDate('yy-mm-dd', date); 
     return [ array.indexOf(string) == -1 ]; 
     } 
    } 

return optionsObj; 
}); 
+0

谢谢您的回答队友,但这似乎并没有寿削减它。相反,它就像它“取消”了以前的代码,整个事件又恢复到标准设置(现在可以选择日历上的每个日期:每天都会恢复到可用状态,包括过去的日期)。 注意:我的编程技巧很不好,也许我可能做错了什么,但我老实说只是复制你的新代码,将它粘贴到旧的代码之下。 – Zongo

+0

你碰巧有一个链接,你可以分享?或者失败了,当你点击F11时,是否有任何控制台javascript错误,请进入控制台选项卡? –

相关问题