【问题标题】:Access disabled field with symfony?使用 symfony 访问禁用字段?
【发布时间】:2016-02-14 19:32:08
【问题描述】:

我对 symfony 中禁用的表单字段有疑问。

我显示的某些字段填充了一个事件(单击复选框),一旦填充就会被禁用,因此它们将无法编辑。

问题是,一旦他们禁用了 symfony,我就找不到插入到该字段中的值,而只是忽略一切有人知道吗?

感谢您的阅读

【问题讨论】:

  • 问题不在于 symfony,而在于 html 规范。表单提交后,禁用的输入没有任何价值。你应该使用相当只读的
  • 当该字段在表单构建器中被禁用而不是在 (twig) 模板中时,Symfony 使用预填充数据来填充表单元素。

标签: symfony symfony-forms sonata-admin


【解决方案1】:

当您禁用某个字段时,它不会被提交。那么你可以使用 readonly 属性而不是那个。默认使用data属性检查字段。

$form->add('name','choice',
    'choices' => array("1" => "A") ,
    'multiple' => 'multiple' ,
    'data'=>array(1),
    'disabled'=>true,
);

【讨论】:

    【解决方案2】:

    这不是关于 Symfony,而是关于 HTML 表单。

    已禁用的表单字段不会被汇总。所以 Symfony 看不到任何数据。试试 readonly 属性。

    见:Disabled form fields not submitting data

    【讨论】:

      猜你喜欢
      • 2015-11-20
      • 2015-08-29
      • 2017-10-16
      • 1970-01-01
      • 2012-12-02
      • 2013-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多