Jquery:通过Ajax加载GoogleMaps会出现空白屏幕

Jquery:通过Ajax加载GoogleMaps会出现空白屏幕,jquery,asp.net-mvc,google-maps,Jquery,Asp.net Mvc,Google Maps,我使用Jquery获取googlemap数据并将其加载到一个div中。我的googlemap来自位于usercontrol上的控件。我的代码如下: $.get('<%= Url.Action("GetMapHtml", "Post") %>', function(data) { $('#MapWndCont').html(data); }); AJAX调用完成并收到数据后,如下图所示(这是正确的,在显示为静态时正确显示: <h3>Google Map</

我使用Jquery获取googlemap数据并将其加载到一个div中。我的googlemap来自位于usercontrol上的控件。我的代码如下:

$.get('<%= Url.Action("GetMapHtml", "Post") %>', function(data) {
     $('#MapWndCont').html(data);
});
AJAX调用完成并收到数据后,如下图所示(这是正确的,在显示为静态时正确显示:

<h3>Google Map</h3>
<div id="divG4158336" class="GoogleMap"></div><script type='text/javascript' src='/WebResource.axd?d=rgm3O6ZOAFRTPnYXcBL7BZMf7PKdndsbCMbyc33Gins1&t=633980535391370000'></script>
<script type='text/javascript' src='http://maps.google.com/maps?file=api&v=2&key=abcdefg&sensor=false'></script>
<script type='text/javascript' src='/WebResource.axd?d=rgm3O6ZOAFRTPnYXcBL7BbNjHCL588M7IBh7laWKeqs1&t=633980535391370000'></script>
<script type='text/javascript'>
var G4158336 = null;$(function(){G4158336=new MvcMaps.GoogleMap('divG4158336',{id:'G4158336',lat:39.9097362345372,lng:-97.470703125,zoom:4,maptype:G_NORMAL_MAP});});</script>
谷歌地图
var G4158336=null;$(function(){G4158336=new mvcmap.GoogleMap('divG4158336',{id:'G4158336',lat:39.9097362345372,lng:-97.470703125,zoom:4,maptype:G_NORMAL_MAP});
之后,接收并放置在#mapWndContent容器中。发生以下情况:

这是另外两个GET请求,它们来自从google map加载的脚本。当它们被触发时,我的页面变为空白,什么也没有显示。body元素也被删除。在您看到第二个ajax调用的图像中。在这之后,整个页面都被删除了html和脚本。因此,调用后的脚本将被执行一段时间他们找不到

感谢所有帮助,纠正这一点,并让我的谷歌地图动态加载

谢谢


编辑:BinaryKitten在freenode.document.ready()上的#JQuery聊天中告诉我,ajax调用的数据中包含了该文件。现在我的问题是将其从MVCMAPS控件中删除。

我可能遗漏了一些明显的内容,但您的JavaScript控制台似乎在抱怨没有定义
$


您是否确实在页面中包含jQuery?例如,
$('body')
是否在控制台中工作?

我可能遗漏了一些明显的内容,但您的JavaScript控制台似乎在抱怨未定义
$


您是否确实在页面上包含jQuery?例如,
$('body')
是否在控制台中工作?

解决问题的一种方法是使用不使用Javascript的Google Maps版本。(静态Api)

解决问题的一种方法是使用不使用Javascript的Google Maps版本。(静态Api)

它是否命中了您的控制器方法?如果命中,返回的数据是什么类型?是否用控制器方法更新了它是否命中了您的控制器方法?如果命中,返回的数据是什么类型?在您看到第二个ajax调用的图像中,使用控制器方法更新了数据。之后,整个页面将被删除html和脚本。因此,在正在执行at调用,但找不到它们。在您看到第二个ajax调用的图像中。之后,整个页面将清除html和脚本。因此,将执行该调用后的脚本,但找不到它们。
<h3>Google Map</h3>
<div id="divG4158336" class="GoogleMap"></div><script type='text/javascript' src='/WebResource.axd?d=rgm3O6ZOAFRTPnYXcBL7BZMf7PKdndsbCMbyc33Gins1&t=633980535391370000'></script>
<script type='text/javascript' src='http://maps.google.com/maps?file=api&v=2&key=abcdefg&sensor=false'></script>
<script type='text/javascript' src='/WebResource.axd?d=rgm3O6ZOAFRTPnYXcBL7BbNjHCL588M7IBh7laWKeqs1&t=633980535391370000'></script>
<script type='text/javascript'>
var G4158336 = null;$(function(){G4158336=new MvcMaps.GoogleMap('divG4158336',{id:'G4158336',lat:39.9097362345372,lng:-97.470703125,zoom:4,maptype:G_NORMAL_MAP});});</script>