提交表单时,将日期选择器转换为MM/DD/YYYY格式



我在我的网站上用Gravity Forms创建了一个订阅订单。该表单包含一个使用日期选择器格式化的日期字段。我添加了自定义Javascript,将日期的可行选择限制在一天之外。该代码如下:

$('#input_14_11').datepicker({
minDate : '+1d'});

它达到了目的,用户无法从日期选择器中选择任何过去的日期,但出现了一个新问题:表单无法提交,而是返回一条错误消息";请输入格式为(mm/dd/yyyy(的有效日期"当我选择一个日期时,它会在字段中显示完整日期,例如:(2022年7月27日(。然而,当我以指定格式(2022年7月27日(手动输入日期时,表格提交时没有问题。

我基本上需要将所选择的";2022年7月27日";当用户点击表单上的提交时,转换为2022年7月27日的正确格式。返回错误的示例

$( "#input_14_11" ).datepicker({ dateFormat: 'mm-dd-yy',minDate : '+1d' });

您可以使用gform_depicker_options_pre_init过滤器(例如(自定义Gravity Forms实例化的日期选择器,而不是实例化新的日期选择器

gform.addFilter( 'gform_datepicker_options_pre_init', function( optionsObj, formId, fieldId ) {
if ( formId == 14 && fieldId == 11 ) {
optionsObj.minDate = '+1d';
}
return optionsObj;
});

通过使用这种方法,所有其他日期选择器属性(如日期格式(将保持不变。

最新更新