在选择选项中选择嫩枝选择的项目

问题描述 投票:0回答:1

我有这样的代码:

{% set selectedIdItems = "{{ pageTemplate.pageHeader.pageValue.comp1X }}"|split('|') %}


<select name="comp1" id="comp1" multiple>
<option value=""></option>
 {% for dataValue in pageTemplate.pageHeader.pageValue.categoryArray %}
   <option value="{{ dataValue.id }}">{{ dataValue.name }}</option>
 {% endfor %}
</select>

selectedIdItems在原来的形式的值(分割前):| 1 | 2 | 3

在数组“selectedIdItems”我所选择的选项。

如何设置这个在选择? (我想补充一下:选择=在我的选择“选择”)

我怎么能做到吗?

UPDATE

我想这个代码,但它不工作(不加选择的):

<select name="comp1" id="comp1" multiple>
                                        <option value=""></option>
                                        {% for dataValue in pageTemplate.pageHeader.pageValue.categoryArray %}
                                            <option {% if dataValue.id in selectedIdItems %} selected="selected" {% endif %} value="{{ dataValue.id }}">{{ dataValue.name }}</option>
                                        {% endfor %}
                                    </select>
php twig
1个回答
0
投票

正如你已经是twig语句中你不需要使用{{ ... }}。这是用来输出的东西。

{% set selectedIdItems = "{{ pageTemplate.pageHeader.pageValue.comp1X }}"|split('|') %}

此外,通过使用上面的代码片段,您的变量selectedItItems将持有文字字符串{{ pageTemplate.pageHeader.pageValue.comp1X }},作为变量没有得到在twig引号之间的插值

更改您的代码

{% set selectedIdItems = pageTemplate.pageHeader.pageValue.comp1X|split('|') %}

demo

© www.soinside.com 2019 - 2024. All rights reserved.