Symfony2 - HTML5需要复选框字段消息

时间:2014-04-07 11:23:46

标签: html5 symfony checkbox

在向所需复选框字段添加消息时,我有一种奇怪的行为。这是字段定义:

$form = $form->add('in_name_of_president', 'checkbox', array(
                    'label' => $this->trans("Actúo en nombre del presidente"),
                    'mapped' => false,
                                'attr'=>array('oninvalid'=>"setCustomValidity('Convocar junta es una acción reservada al presidente. Debes clicar el cuadro de confirmación')"),
                    'constraints' => new True(array(
                    'message' => "Convocar junta es una acción reservada al presidente. Debes clicar el cuadro de confirmación"
                                ))));

如果我在提交表单之前选中了复选框,它可以正常工作,但是如果我尝试提交而不检查它,我会收到错误消息,然后,如果我检查它并尝试再次提交,我就会这样做虽然现在选中了复选框,但仍然会收到错误。

1 个答案:

答案 0 :(得分:0)

True验证程序中的问题。如果值为NULL,则所有验证器都不检查该值(预期:NotNullNotBlank)。 (例如:https://github.com/UserScape/symfony-component-bundle/blob/master/Validator/Constraints/TrueValidator.php#L34)。如果未选中该复选框,则表单数据中的值为NULL。 (有关详细信息,请参阅Symfony表单中CheckboxType的来源)。

如果您要检查复选框,则必须使用NotNull验证。