|
11 | 11 | * https://gravitywiz.com/gravity-forms-code-chest/ |
12 | 12 | */ |
13 | 13 | const sourceFieldId = 25; // Replace with the ID of the source field (Field A) |
14 | | -document.addEventListener( 'gform/post_render', ( event ) => { |
15 | | - const $field = jQuery( `#input_GFFORMID_${sourceFieldId}` ); |
16 | | - const value = $field.val(); |
17 | | - if ( value ) { |
18 | | - requestAnimationFrame( function(){ |
19 | | - $field.trigger( 'input' ).trigger( 'change' ); |
| 14 | + |
| 15 | +// Initialize field events on form render. |
| 16 | +document.addEventListener( 'gform/post_render', (event) => { |
| 17 | + const formId = event.detail.formId; // Get the form ID from the event |
| 18 | + const $field = getSourceField(formId, sourceFieldId); |
| 19 | + triggerFieldEventsIfValueExists($field); |
| 20 | +}); |
| 21 | + |
| 22 | +// Handle conditional logic changes. |
| 23 | +gform.addAction( |
| 24 | + 'gform_post_conditional_logic_field_action', |
| 25 | + (formId, action, targetId, defaultValues, isInit) => { |
| 26 | + const $field = getSourceField(formId, sourceFieldId); |
| 27 | + triggerFieldEventsIfValueExists($field); |
| 28 | + } |
| 29 | +); |
| 30 | + |
| 31 | +// Triggers input and change events on a field if it has a value. |
| 32 | +const triggerFieldEventsIfValueExists = ($field) => { |
| 33 | + const value = $field.val(); |
| 34 | + if (value) { |
| 35 | + requestAnimationFrame(() => { |
| 36 | + $field.trigger('input').trigger('change'); |
20 | 37 | }); |
21 | 38 | } |
22 | | -}); |
| 39 | +}; |
| 40 | + |
| 41 | +// Get the source field based on form ID and field ID. |
| 42 | +const getSourceField = (formId, fieldId) => { |
| 43 | + return jQuery(`#input_${formId}_${fieldId}`); |
| 44 | +}; |
23 | 45 |
|
24 | 46 | gform.addAction( 'gpld_after_set_min_date', function( $input, date ) { |
25 | 47 | $input.datepicker( 'setDate', date ); |
|
0 commit comments