jquery可以在html中工作,但不能在twig模板中工作

jquery可以在html中工作,但不能在twig模板中工作,jquery,symfony,twig,Jquery,Symfony,Twig,下面的代码将获取并发布地理坐标,但我希望它在div中显示一些文本、按钮或其他内容。同样的代码在html中也可以使用,但在twig模板中,在 {%extends "LoginLogBundle:Default:index.html.twig"%} {%block javascripts%} {{parent()}} <script src={{asset('js/jquery.form.js')}}></script> <scr

下面的代码将获取并发布地理坐标,但我希望它在div中显示一些文本、按钮或其他内容。同样的代码在html中也可以使用,但在twig模板中,在

   {%extends "LoginLogBundle:Default:index.html.twig"%}

   {%block javascripts%} 

   {{parent()}}

   <script src={{asset('js/jquery.form.js')}}></script>

   <script> 

   function getCoordPosition() { 

 if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function (position) {
    $.ajax({
        type: "POST",
        url: "{{path('login_log_location')}}",
        data: {
            latitude: position.coords.latitude,
            longitude: position.coords.longitude
        },
        success: function () {
            $("#divputinarea").html('popojpojoojpopjopjojp');
        }
       });
   });
  }
return false;
 }

 </script> 

{%endblock%}

{% block body%}


 <div id="divputinarea">
<button class="btn btn-large btn-primary" onclick="getCoordPosition()">Click to
share     your location</button>
</div>

{%endblock%}
{%extends“LoginLogBundle:Default:index.html.twig”%}
{%block javascripts%}
{{parent()}}
函数getCoordPosition(){
if(导航器.地理位置){
navigator.geolocation.getCurrentPosition(函数(位置){
$.ajax({
类型:“POST”,
url:“{path('login_log_location')}}”,
数据:{
纬度:位置。坐标。纬度,
经度:position.coords.longitude
},
成功:函数(){
$(“#divputinarea”).html('popojpojoojpopjojp');
}
});
});
}
返回false;
}
{%endblock%}
{%block body%}
点击
共享您的位置
{%endblock%}

起初我认为它是$(“#divputinarea”).html,这不会被html.twig接受,你知道为什么它在twig中不起作用吗

使用jqueryready函数在页面加载后执行代码,并确保设置{%block javascripts%}
在基本页面的正文之前(默认情况下,它在后面)

是您在
web
dir中的脚本
js/jquery.form.js
?您是否转储了(
php应用程序/控制台assetic:dump
)您的资产?或者您可以尝试安装资产(例如,dev env:
php应用程序/控制台资产:install--symlink web/
)。@victor是的,一些jquery可以工作,即geo部分。但不是像上面提到的那样div@NHG它适用于第一部分,因此必须有jqueryavailable@GAV那么,也许jQuery包含在脚本之后?你能检查一下你的输出文件标题部分吗?或者更好的控制台输出:奇怪的是,我找到了有效的解决方案,尽管我不知道为什么。如果我在控制器中添加“return$this->render('LoginLogBundle:Default:geo.html.twig',(array('id'=>'something'));”,我第一次发布到“login\u log\u location”中,它似乎可以工作。id=>有些东西甚至没有被使用。