1

简而言之:是否有 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 函数中。


关于这个问题的一些背景信息。当在日期字段中选择某个月份时,我希望一个字段变得可见。由于重力形式不支持基于日期字段的“条件逻辑”,我想用“月份值”更新隐藏字段,然后将该值用于相关字段的“条件逻辑”。

在此处输入图像描述

4

1 回答 1

1

Gravity Forms 条件由clickorchange事件触发,具体取决于字段的类型。您可以使用该方法手动触发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

干杯!

于 2018-06-21T17:53:32.617 回答