2010-12-09 36 views
0

我正在使用ASP.NET來開發一個web應用程序。在這個應用程序中,我使用了一個儀表板。現在我嘗試爲這個DashBord開發我自己的小部件。但我不明白如何做的JavaScript部分。小部件中的JavaScript - 如何處理?

在小部件中,我想使用OpenLayers JavaScript地圖。它是這樣創建的

<script> 
    var map = OpenLayers.Map("mapDiv"); 
</script> 
<div id="mapDiv" /> 

像這樣,它工作正常,如果我只想同時使用一個小部件。但是如果想在同一儀表板中多次使用它,我會遇到很多問題。我有兩個具有相同ID和名稱映射的變量的div。

因此,div id是沒有問題的,我用ASP.NET動態生成它。但是,我如何處理JavaScript部分,以便不覆蓋我的「地圖」變量?

希望有人能夠理解我的問題。

感謝

回答

0

如果你有定義生成自定義ID爲DIV的一種方式,你應該能夠使用相同的功能,該ID傳遞給腳本:

<% Dim myId As String = GenerateId() %> 
<div id="<%= myId %>"></div> 
<script type="text/javascript"> 
    this["<%= myId %>"] = OpenLayers.Map("<%= myId %>"); 
</script> 

從本質上講,訣竅是您可以通過使用括號語法在全局上下文中定義新條目(「this」變量)來創建動態命名的變量。

相關問題