提问人:Sethu Tsabedze 提问时间:6/5/2023 更新时间:6/5/2023 访问量:71
如何在 Gravity Forms 中使用 javascript 或 jquery 设置所需的输入字段
How can I set an input field required using javascript or jquery in Gravity Forms
问:
我正在使用重力表单为活动创建注册表。如果参与者人数等于衬衫数量,则该表格应允许用户注册。如果没有,请设置所需的参与者人数输入字段。
下面是一段由 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();
});
答:
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 或表单链接吗?这将有助于解决问题!
评论