2012-12-26 41 views
0

首先:我對JavaScript和HTML相當陌生。我遇到了一個肯定屬於新手類別的問題/問題,但我不知道要尋找什麼來獲得答案。我想要做這樣的事情:在html文檔中保存JavaScript對象的實例

<script type="text/javascript"> 
    var map; 
    $(document).ready(function() { 
     this.map = new GoogleMap(); 
     this.map.initialize(); 
    }); 
    var addMarker = function(lat, lng, address) { 
     this.map.addMarker(lat, lng, address); 
    }; 
</script> 

我想從剃刀調用的函數addMarker

@foreach (var item in Model.Companies) 
{ 
    <script> 
     addMarker(@item.Latitude, @item.Longitude, '@item.Address'); 
    </script> 
} 

的問題是,map未在方法的範圍內聲明。什麼是使這個woking的正確方法?

+0

這從文件調用的地圖變量,但實際上你的VAR店窗口對象。我認爲 –

+0

如果你是一個JavaScript的初學者,那麼我會建議你去了解'this'關鍵字。這在javascript中有點棘手。 – Dismissile

回答

0

訪問您在第一行中聲明的map變量而非this.map

2

不要使用this.map只是map,這將給你訪問你已經宣佈進入window範圍全局變量map

var addMarker = function(lat, lng, address) { 
    map.addMarker(lat, lng, address); 
}; 
相關問題