我目前正在处理一个大的 html 表单。我使用 Php Quickform 来创建和验证它。该表单有几个组,由一个输入文本字段和一个选择字段组成。其中一组的代码
看起来像这样:
$autoren = array("0" => "", "1" => "Bob", "2" => "Harry", "3" => "Autor 3");
$arr[] = &HTML_QuickForm::createElement('text', 'autorT', 'AutorText', array('size' => 37, 'maxlength' => 50));
$arr[] = &HTML_QuickForm::createElement('select', 'autorO', 'AutorOptions', $autoren);
$form->addGroup($arr, 'Autoren', 'Autor:', '<br />');
我迫切需要某种 Rule/GroupRule 以以下方式验证该组:
- 如果两个字段都为空 -> 错误。
- 如果其中一个字段有值,则另一个必须为空,否则 -> 错误。
- 如果两个字段中都有值,则它们必须匹配,否则 -> 错误。
有人可以向我解释我如何做到这一点吗?我已经尝试编写自定义规则,但不知何故,代码从未调用过我的验证方法。