问题描述
我正在尝试从 Gravity Forms 中的日期选择器中禁用过去的日期,但我不断收到控制台错误或它无法正常工作...
我第一次尝试:
gform.addFilter( 'gform_datepicker_options_pre_init',function( optionsObj,formId,fieldId ) {
if ( formId == 2 && fieldId == 111 ) {
optionsObj.minDate = 0;
}
return optionsObj;
});
我收到了这个错误:gform is not defined
然后我尝试使用以下方法定义 gform:
var gform = $('#gform_2');
和 var gform = document.getElementById('gform_2');
并得到这个错误:gform.addFilter is not a function
将它包装在 jQuery(document).ready(function($) { });
中不会给我错误,但它也不会禁用过去的日期。
我什至走老派路线并尝试过:
$("#input_2_111").datepicker( {
minDate: "+0d" });
那没有用……我看到了 PHP gform_date_min_year
钩子,但没有看到最短日期。我错过了什么?
解决方法
尝试使用我们免费的 Gravity Forms Custom Javascript 插件。它会在适当的时候处理这样的加载片段。
http://gravitywiz.com/gravity-forms-custom-javascript/
如果您想让事情变得更简单,请使用 Gravity Forms Limit Dates 并直接从字段设置中进行配置。