【问题标题】:Advanced multiple select box for symfony2symfony2 的高级多选框
【发布时间】:2015-04-21 19:18:34
【问题描述】:

我正在使用 symfony2

我有 Manytomany 实体并使用这样的多个选择框。

在php中

    ->add('availLangs','entity',array(
            'class' => 'UserBundle:Lang',
            'label' => 'form.availLangs',
            'multiple' => true))

在树枝上

{{ form_widget(form.availLangs) }}

虽然很简单,但是当有很多选择时(比如10~),情况可能会给用户带来混乱。

所以我正在尝试实现这样的选择框

HTML multiple select box

一些小部件可以轻松地从许多项目中选择多个项目。

用 symfony2 或 formbuilder 实现有没有好的参考?

【问题讨论】:

  • 一个很好的捆绑包(还有更多)是 GenemuFormBundle。我喜欢。我认为 select2 组件可能对您有用。
  • 谢谢 Yenne 信息。不过现在我会使用 select2,我会检查你的建议。

标签: php symfony formbuilder


【解决方案1】:

您可以使用select2 jquery 小部件,它有一个很好的搜索输入,您可以在其中键入所需选项的一些字符,小部件会将它们发送给您。 https://select2.github.io/

示例: http://jsfiddle.net/eoaa2wqw/

在 symfony2 中,只需通过 builder 或 twig 将 select2 类添加到您的输入中

->add('availLangs','entity',array(
            'class' => 'UserBundle:Lang',
            'label' => 'form.availLangs',
            'attr'=> array('class'=> 'select2') <-- here 
            'multiple' => true))

然后激活 select2 :

$('.select2').select2(// options maybe ) ; 

【讨论】:

  • 谢谢 这个小部件对我来说真的很棒而且很好。非常感谢
猜你喜欢
  • 1970-01-01
  • 2015-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-27
  • 1970-01-01
  • 2016-12-04
相关资源
最近更新 更多