简短说明:是否存在JavaScript函数或挂钩来触发对重力窗体的更新,以便执行条件逻辑?
原始问题:
我正在使用Gravity Forms,并且创建了一个“ on change”事件
$('#gform_1').find('.gfield_date_dropdown_month select').change(function () {
var month = $(this).val();
$('input#input_1_6').val(month).change();
});
此事件之后,我希望重力表单检查/更新表单,以便对相关字段执行“条件逻辑”。
我已经检查了https://docs.gravityforms.com/category/extending-gravity-forms/hooks/javascript上的钩子 但是我找不到可以用于此目的的钩子。有什么想法吗?
更新: 更改的字段(#input_1_6)为“隐藏”。这似乎是问题所在。当我使该字段可见时,它确实起作用了!因此,更改为“隐藏”字段似乎不会触发对表单的更新。如果我有一个可以触发此更新的函数,可以将其添加到我的jQuery函数中。
有关此问题的一些背景信息。我希望在日期字段中选择某个月份时该字段变得可见。由于Gravity Forms不支持基于日期字段的“条件逻辑”,因此我想用“月值”更新一个隐藏字段,然后将该值用于相关字段上的“条件逻辑”。
答案 0 :(得分:0)
重力字段条件条件由click
或change
事件触发,具体取决于字段的类型。您可以使用change
方法手动触发.change()
事件。
请注意,这是行不通的,因为条件没有绑定到附加更改事件的字段,因此您必须在具有条件的字段上触发.change()
。假设字段1_6
是触发条件的字段:
$('#gform_1').find('.gfield_date_dropdown_month select').on('change', function(){
var month = $(this).val();
$('#input_1_6').val(month).change();
});
其他一些小注释,请考虑使用.on('change', function(){}
而不是.change(function(){}
,因为它会在动态元素上触发-以及在input
之前不需要#input_1_6
已经是一个独特的元素了。
干杯!