如何在 Gravity Forms 中使用 javascript 或 jquery 设置所需的输入字段

How can I set an input field required using javascript or jquery in Gravity Forms

提问人:Sethu Tsabedze 提问时间:6/5/2023 更新时间:6/5/2023 访问量:71

问:

我正在使用重力表单为活动创建注册表。如果参与者人数等于衬衫数量,则该表格应允许用户注册。如果没有,请设置所需的参与者人数输入字段。

下面是一段由 Faisal Ahammad 编写的代码,它有效,除非将字段设置为必填。

$(document).ready(function() {
    var participants = $('#input_1_36_1');
    var shirts = $('#input_1_18');
    var field = $('#field_1_45');

    function validateForm() {
        if (Number(participants.val()) !== Number(shirts.val())) {
            participants.attr('required', true);
            field.css('color', 'red');
            participants.css('border', '2px solid red');
            field.show();
        } else {
            field.css('color', 'green');
            field.hide();
               }
        }

     // Call validateForm every time the values of the input fields change
     participants.add(shirts).on('input', validateForm);

      validateForm();

});

javascript jquery if-statement gravity-forms-plugin

评论


答:

0赞 Prem Chaudhary 6/5/2023 #1

使用 prop() 而不是 attr() 作为必需属性

在代码中将对 attr () 的调用替换为 prop () 通常可以工作。属性通常比属性更易于处理。属性值只能是字符串,而属性可以是任何类型。

下面是代码的更新版本:

    jQuery(document).ready(function($) {
        var participants = $('#input_1_36_1');
        var shirts = $('#input_1_18');
        var field = $('#field_1_45');
    
        function validateForm() {
            if (Number(participants.val()) != = Number(shirts.val())) {
                participants.prop(
                    'required',
                    true);  // Use prop() instead of attr() for required attribute
                field.css('color', 'red');
                participants.css('border', '2px solid red');
                field.show();
            } else {
                field.css('color', 'green');
                field.hide();
            }
        }
    
        // Call validateForm every time the values of the input fields change
        participants.add(shirts).on('input', validateForm);
    
        validateForm();
    });

评论

0赞 Sethu Tsabedze 6/5/2023
嗨,Prem,感谢您的帮助。我尝试使用 prop(),但它仍然不起作用。
0赞 Prem Chaudhary 6/5/2023
嗨,Sethu,请您提供表单 HTML 或表单链接吗?这将有助于解决问题!