如何创建具有多个值的自动选择下拉字段?

时间:2016-10-17 08:39:25

标签: symfony dropdown

我已经创建了一个自动提交下拉字段,只要给出一个值,它就可以正常工作。示例如下:

    <select name="stat" onchange="this.form.submit();">
      <option name="stat"
            {% if app.request.get('stat') == '1' %}
            selected="selected"
            {% endif %} value="1">Data
      </option>
      <option name="stat"
            {% if app.request.get('stat') == '2' %}
            selected="selected" {% endif %} value="2">Data2
      </option>
      <option name="stat"
            {% if app.request.get('stat') == '3' %}
            selected="selected"
            {% endif %} value="3">Data
      </option>
         </select>

但我想要做的是创建一个选项,其中选择多个值。以下示例但对我来说不起作用

   <option name="stat"
      {% if app.request.get('stat') == '1' or app.request.get('stat') == '2'
      or app.request.get('stat') == '3'
      %}
      selected="selected" {% endif %} value ="all"> All
  </option>

存储库:

   public function getStat($stat) {

        $em = $this->getEntityManager();
        $query = $em->createQuery(

                'SELECT partial a.{names},
                partial b.{stat,sender},
                partial c.{nametypeId, nametype}
                FROM MatrixNameBundle:file a
                WHERE b.stat LIKE :stat')

        ->setParameter('stat', $stat);

请有人帮我解决这个问题!!!

1 个答案:

答案 0 :(得分:0)

如果您查看生成的HTML代码,您可能会看到多个<option>元素具有selected属性,给定您的代码和一个已定义的值。但是,默认情况下,HTML选择输入只能有一个选定值。要允许多项选择,您需要添加multiple属性:

<select multiple>
...
</select>