我想做两个精子检查框组。让我们说
Front end courses
-Bootstrap
-React Js
-Angular js
Back end courses
-C#
-Node
-PHP在提交表格时,我希望确保用户至少选择了一门课程。假设学生选择ReactJ。
我尝试了下面的代码,但它使所有复选框组都必须有一个选项。
[Checkbox* checkbox-11 ",Bootstrap" "React Js" "Angular JS"]
[Checkbox* checkbox-12 ",C#" "Node" "PHP"]如何使从任何复选框组中选择的至少一个选项是强制性的?
发布于 2022-06-03 08:34:40
字段验证是在表单提交后进行的。要解决这个问题,您需要使两个字段都不是强制性的,然后在服务器端进行自定义验证。CF7插件允许您将自定义验证添加到单个字段,但不允许您将字段wrt验证为表单中其他字段的值。
要做到这一点,您需要一个扩展,比如智能电网-布局插件,它有一个验证钩子,它允许您访问整个表单提交的数据,从而交叉验证您的字段,
add_filter('cf7sg_validate_submission', 'cross_validate_submission',10,3);
function cross_validate_submission($validation, $submission, $form_key){
if(empty($submission['fe-courses']) && empty($submission['be-courses'])){
$validation['fe-courses']='You need to select at least 1 course!';
}
return $validation;
}https://stackoverflow.com/questions/71283222
复制相似问题