[英]Symfony2 pass variable from controller to javascript
我有这个controller.php
$repository = $this->getDoctrine()->getManager()->getRepository('TechappStatsBundle:ParentForm');
$data = $repository->findBy(array(),array('id' => 'desc'),1,0);
$formulaire = new ParentForm();
$parent= $this->get('form.factory')->create(new ParentFormType(),$formulaire);
if ($parent->handleRequest($request)->isValid()) {
$em = $this->getDoctrine()->getManager();
$em->persist($formulaire);
$em->flush();
}
return $this->render('TechappStatsBundle:Stats:index.html.twig',array("res" => $data,
"parentform"=>$parent->createView(),));
我想用js检查视图中的变量res
是否等于特定值,但我不知道如何传递它。
您可以像这样通过控制器传递参数:
return $this->render('TechappStatsBundle:Stats:index.html.twig', array(
"res" => "Your data here"));
您可以像这样访问index.html.twig中的“ res”参数:
{% block js %}
<script type="text/javascript">
var res = '{{ res }}';
alert(res);
</script>
{% endblock %}
我的选择始终是将其发送到data-value ,
你可以做类似的事情
<div id="res-result" data-res="{{ res }}" style="display: none;">
div不需要隐藏,即使它与div有关,我也总是将其放在与div有关的内容中,即使它不是隐藏的也是如此
然后从Jquery:
resValue = $('#res-result').data('res');
将JS文件放在HTML之外是IMO最干净的方法
如果要将数据传递给Javascript,可以将视图更新为以下任意一种:
data-<field>
一旦获得它,就可以轻松地从jQuery
获取值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.