Javascript:缺少)参数列表之后

时间:2017-06-02 18:17:46

标签: javascript symfony twig

我试图调用在Google地图上添加标记的javascript函数。

这是我的代码:

   {% for entreprise in entreprises %}
        <script> addMarker({{ entreprise.latitude }},{{ entreprise.longitude }},{{ entreprise.nom}})</script>
   {% endfor %} 

这是我的功能:

function addMarker(latitude,longitude,nom)
{
     var marker = new google.maps.Marker({
      position: {lat: latitude, lng: longitude},
      map: map,
      label: nom,
      title: nom
    });

} 

我收到错误:missing ) after argument list 当我尝试引用我的变量时:

<script> addMarker('{{ entreprise.latitude }}','{{ entreprise.longitude }}','{{ entreprise.nom}}')</script>

我收到错误:

addMarker() is not defined.

如何在Twig中调用我的函数?

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

1

    {% for entreprise in entreprises %}
        <script> addMarker({{ entreprise.latitude }},{{ entreprise.longitude }},{{ entreprise.nom}})</script>
   {% endfor %} 

您需要输入引用,因为latitudelongtitudenom将输出php字符串而不是javascript的变量,因此您的猜测是添加{{1}是对的。

(但在循环外右'更好 更好地拥有这个

<script>
  1. 你以前打过电话吗?如果你在它之前声明你的功能,当然会说如果没有定义。因此,在调用函数 <script> {% for entreprise in entreprises %} addMarker('{{ entreprise.latitude }}','{{ entreprise.longitude }}','{{ entreprise.nom}}') {% endfor %} </script>
  2. 之前,请尝试导入脚本

    你使用jQuery()吗?如果是这样,你可以使用

    addMarker

    所以你可能会得到

    $(document).ready(function(){});