2016-09-15 25 views
0

我已閱讀關於此錯誤的所有教程。但我無法解決我的問題。我想用Google apis根據我的經度和緯度顯示地圖。 我加入地圖API使用谷歌地圖類似如下:您已在此頁面上多次包含Google Maps API錯誤雖然我並不包含

<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script> 

這個庫中添加_Layout.cshtml後,我得到了錯誤,如如下:

You have included the Google Maps API multiple times on this page. This may cause unexpected errors. 

是這個錯誤發生,即使沒有在map.cshtml文件中添加有關Google地圖的任何代碼。所以我認爲這個錯誤與谷歌地圖代碼無關。在map.cshtml文件谷歌地圖代碼如下如下:

<script> 
    $(document).ready(function() { 
     InitializeMap(); 
    }); 

    function InitializeMap() { 
     var data = { 
      Latitude: '@Model.Latitude', 
      Longitude: '@Model.Longitude' 
     }; 
     var latlong = new google.maps.LatLng(data.Latitude, data.Longitude); 
     var myOptions = { 
      zoom: 12, 
      center: latlong, 
      mapTypeControl: true, 
      scaleControl: true, 
      zoomControl: true, 
      zoomControlOptions: { 
       position: google.maps.ControlPosition.LEFT_CENTER 
      }, 
      fullscreenControl: true, 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 
     var map = new google.maps.Map(document.getElementById("Map"), myOptions); 
    } 
</script> 

div標籤,它會顯示谷歌地圖就像如下:

<div id="Map" style="width: 750px; height: 500px"></div> 

我搜索「googleapis」一詞在目前所有的項目但我找不到另一個。錯誤如下: enter image description here

+0

檢查開發人員工具控制檯/網絡並在加載頁面時檢查標籤頁 - 您應該能夠看到發生的位置和方式 –

回答

0

我最近有同樣的錯誤。我想根據經度和緯度顯示地圖。單擊serach按鈕時顯示地圖。點擊搜索按鈕並且將座標發送到控制器操作方法。然後地圖顯示在同一頁面上。因爲我在javascript中用ajax調用控制器動作。所以這兩個視圖頁面是在相同的視圖。每次我得到這個錯誤。我的搜索按鈕,這是index.html中低於:

<button type="button" id="btnSearch" class="btn btn-warning" style="height:35px;width:120px"> 
        <i class="fa fa-search" aria-hidden="true"></i> 
        <translate>Search</translate> 
</button> 

我的Ajax調用是index.html中就像如下:

$('#btnSearch').click(function() {  
      $.ajax({ 
       url: '@Url.Action("Search", "ControllerName")', 
       data: { Name: $('#Name').val() }, 
       type: 'POST', 
       success: function (data) { 
        $("#mapSupriseForm").html(data); 
       } 
      }); 
    }); 

地圖中顯示,「mapSupriseForm」驚喜形式index.html的。它是如下:

<div id="mapSupriseForm"></div> 

谷歌地圖代碼在search.cshtml。 Search.cshtml顯示在index.cshtml中。即index.cshtml和search.cshtml是相同的地方。我將google maps api庫添加到_Layout.cshtml中。 Search.cshtml和index.cshtml使用_Layout.cshtml作爲loyout。所以谷歌地圖API被添加多次,並且錯誤被瀏覽器拋出。 Search.cshtml在index.cshtml中,因此search.cshtml不應該添加_Layout.cshtml。由於index.cshtml,search.cshtml已經使用_Layout.cshtml。由於所有這些原因,我禁用了search.cshtml的佈局,如下所示:

@{ 
    ViewBag.Title = "Search"; 
    Layout = ""; 
} 

以這種方式google maps api庫被添加一次。並且錯誤得到解決。我希望這個經驗能幫助你解決你的問題。

相關問題