我需要通过html数据属性向JS发送一些值。
<div class="article"
data-article="[{% for data in article %}{{ data }},{% endfor %}]"
>
我使用foreach来获取现有的关联数组的每个元素,以创建一个新的数据属性。
这个效果很好但是在这里我想发送整个数组如果有办法的话
我知道数组可以通过数据HTML属性发送,但我想知道我是否可以发送关联数组的原因,以避免多个数据属性在一个HTML元素
在这种情况下我将使用JSON
使用PHP构建HTML时使用
data-article=JSON_encode($yourarray)
现在html就有数组了。你可以用
在JS中解码它 JSON.parse($("div.article")[0].dataset.article)
我从会计建议中得到了解决方案。
JSON是帮助我,但我必须再次做foreach时symfony树枝渲染数组
我是这样做的
data-article='[{ {% for key,value in article %}{% if i > 0 %},{% endif %}"{{ key}}":"{{ value }}"{% set i = i+1 %}{% endfor %} }]'>
必须在一行
{% set i = 0 %}
data-article='
[{
{% for key,value in article %}
{% if i > 0 %},{% endif %}
"{{ key}}":"{{ value }}"
{% set i = i+1 %}{% endfor %}
}]
'>