【发布时间】:2016-03-03 21:53:14
【问题描述】:
我正在使用重力表单数据选择器,如果值等于“Framingham”,则需要禁用基于表单顶部选择字段的日期范围。我很确定我需要销毁日期选择器并在更改时重新初始化它,但我并不完全确定。如果未选择“Framingham”,则 45 天应改为 30。这是我所能得到的:
jQuery(function(){
jQuery('#input_3_23').on('change', function(){
if(jQuery(this).val() == 'Framingham'){
for(var i=0; i<45; i++){
var day=new Date(year, month, date + i);
disabledDays.push(("0" + (day.getMonth() + 1)).slice(-2) + '/' + ("0" + day.getDate()).slice(-2) + '/' + day.getFullYear() );
}
gform.addFilter( 'gform_datepicker_options_pre_init', function( optionsObj, formId, fieldId ) {
if (formId == 3 && fieldId == 14 || formId == 3 && fieldId == 15 || formId == 3 && fieldId == 16) {
optionsObj.minDate = 0;
optionsObj.beforeShowDay = function(date) {
var checkdate = jQuery.datepicker.formatDate('mm/dd/yy', date);
return [disabledDays.indexOf(checkdate) == -1];
};
}
return optionsObj;
});
}
});
});
我还有一个用户可选择的 disableDays 数组,这是
return [disabledDays.indexOf(checkdate) == -1];
来自。任何帮助将不胜感激!
【问题讨论】:
标签: jquery datepicker gravity-forms-plugin