Jquery Ajax和Google地图在Django中不起作用

Jquery Ajax和Google地图在Django中不起作用,jquery,django,google-maps,google-maps-api-3,Jquery,Django,Google Maps,Google Maps Api 3,我使用django easy maps在我的页面上显示地图,我在侧边栏上有一些链接,当用户单击该链接时,我想用链接中的地址刷新地图 我的devote.html的django模板如下 {% block optionalcode %} <script> $(document).ready(function() { $('.link').click(function() { var n = $(this).attr("name"); n=n.replace(/\s/g,'+'); $('#

我使用django easy maps在我的页面上显示地图,我在侧边栏上有一些链接,当用户单击该链接时,我想用链接中的地址刷新地图

我的devote.html的django模板如下

{% block optionalcode %}
<script>
$(document).ready(function() {
$('.link').click(function() {
var n = $(this).attr("name");
n=n.replace(/\s/g,'+');
$('#results').html('&nbsp;').load('/donate/?n=' + n);
});
});
</script>


{% endblock %}

{% block contenttitle %}{% endblock %}

{% block content %}     
<div class="container-fluid">
<div class="row-fluid">
<div class="span8">


<div class="hero-unit" style="padding:10px 10px 10px 10px">

<div id="results">
<b> <pre class="prettyprint
linenums"> {{addr}} </pre> </b>
{% load easy_maps_tags %}
{% easy_map addr 725 400 %}     
</div>

</div>
</div>





{% endblock %} 

{% block sidebar %} 
<div class="span4">
    <div class="hero-unit" style="padding:10px 10px 10px 10px">

        <div class="accordion" id="accordion2">

       <div class="accordion-group">
              <div class="accordion-heading">
                <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseOne">
                  North Delhi
                </a>
              </div>
              <div style="height: 0px;" id="collapseOne" class="accordion-body collapse">
                <div class="accordion-inner">
                  <ol>
                  <li><a class='link' href="#" name="Some name1">Some link1</a> </li>
                  <li><a class='link' href="#" name="Some name2">Some link2</a> </li>




                  </ol>
                </div>
              </div>
            </div>


</div>
{% endblock %}
而捐赠_res.html只是替换#results div代码的一小部分

<b> <pre class="prettyprint linenums"> {{addr}} </pre> </b> 
  {% load easy_maps_tags %} 
  {% easy_map addr 725 400 using "easy_maps/map.html"%}
请告诉我我做错了什么,或者有什么解决方法来消除这个错误……我是Django的新手。

看看。它应该回答为什么它不起作用

另外,我个人不同意你这样做。它是在你每次点击链接时重新创建和重新加载地图,这不仅效率低下,而且从长远来看,你可能会遇到一些问题,这些问题限制了你从谷歌加载地图的最大次数

我建议您创建自己的javascript来加载地图和地址,或者查看django easy maps生成的代码,看看您是否可以设置地图的中心或标记的位置,而不是重新创建容器并重新下载地图javascript


如果您可以粘贴django easy maps在
{%easy\u map addr 725 400中使用“easy\u maps/map.html”%}生成的代码,我可以提供更多帮助

地址是文本还是点?@Maqsood:地址是文本。我之前看到了这个问题,问题中提到的问题和我一样,但我不完全理解答案……其中一条评论建议在脚本url中添加&callback=isNaN。我也这样做了,但不起作用……下面是easy_map标记生成替换html,并在load event
google.maps.event.addDomListener(窗口“load”,初始化_map_14)上附加一个事件侦听器也已触发。您是否仅尝试列出位置并更改列表?你们有多少个地点?最好将位置文本和坐标存储在数据库中,以JSON获取回复,然后使用
setTitle(title:string)
setPosition(latlng:latlng)
移动标记并更改标题。这也会快得多。我已经在Django做过了。你能分享一下你做这件事的代码吗?如果你同意的话。非常感谢。
<b> <pre class="prettyprint linenums"> {{addr}} </pre> </b> 
  {% load easy_maps_tags %} 
  {% easy_map addr 725 400 using "easy_maps/map.html"%}
A call to document.write() from an asynchronously-loaded external script was ignored. @ http://127.0.0.1:8000/donate/