【问题标题】:Temporarily disabling form validation?暂时禁用表单验证?
【发布时间】:2014-07-15 14:17:13
【问题描述】:

当我开发时,我并不总是想通过 Symfony2 的验证器来验证我的表单。

(我说的不是关闭 HTML5 验证。)

是否有快速禁用和重新启用表单验证的方法?

【问题讨论】:

    标签: forms symfony


    【解决方案1】:

    为此,您可以将validation_groups 选项设置为false:

    use Symfony\Component\OptionsResolver\OptionsResolverInterface;
    
    public function setDefaultOptions(OptionsResolverInterface $resolver)
    {
        $resolver->setDefaults(array(
            'validation_groups' => false,
        ));
    }
    

    希望这会奏效。

    这些链接会有所帮助:temporarily disabling validation

    Skip validation if sibling (checkbox) field contains 'false'

    【讨论】:

    • 嗯,我使用了很多表格,所以我必须对每个表格都这样做......不过,我会尝试看看这是否值得努力,谢谢你建议。
    • @Tek 谢谢...查看已编辑答案中的链接...它可能对您有所帮助
    • 最后一个链接非常有趣。我只是想知道如何利用它来发挥我的优势......也许我会将该选项注入我所有表单的构造中并默认进行验证,但可以选择在构造函数选项中手动关闭验证。我认为这会奏效,谢谢!
    • 顺便说一句,您应该将用户名更改为更好的名称。 stackoverflow.com/users/edit/3830694 :)
    • 第一个文档链接不再正确。正确链接:symfony.com/doc/current/form/disabling_validation.html
    【解决方案2】:

    试试这个

    你可以用jquery来处理这个

    是否禁用表单验证?

    $(fromId).removeAttr("novalidate");

    用于移除表单验证?

    $(fromId).attr("novalidate");

    【讨论】:

    • 就像我提到的,我不是在谈论 HTML5 验证。 :) 我说的是 Symfony 的内部表单验证器。
    • 我很抱歉..但没有正确理解
    猜你喜欢
    • 2012-03-06
    • 2011-12-27
    • 2017-07-08
    • 2019-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-30
    • 1970-01-01
    相关资源
    最近更新 更多