[英]Accessing javascript variable inside {{ }} symfony twig
我有一个数组arr从控制器发送到包含一些JavaScript脚本的树枝模板,我想使用for循环访问数组的行,如下所示:
for (var i = 0; i < 3; i++) {
alert('{{ arr[i] }}');
}
但是变量我是未知的,我得到这个错误:
变量“ i”不存在。
有什么建议么?
这是如何通过树枝将控制器中的php数组转换为javascript数组的方法:
控制者
return $this->render(
'AppBundle:index.html.twig',
array(
'myArray' => array('foo', 'bar', 'z')
)
);
树枝视图
{% block javascripts %}
<script type="text/javascript">
var myArray = '{{ myArray | json_encode | raw }}';
</script>
{% endblock %}
Twig是PHP。 您将其值发送到javascript,但是不能将javascript变量带到php。 (AJAX等除外,但此处不相关)
可能:
/* javascript variable */
var name = {{ object.name }}
console.log(name);
不可能:
/* javascript variable */
var name = 'toto';
{# Twig #}
{{ name }} // <- IMPOSSIBLE
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.