簡體   English   中英

將JavaScript代碼添加到動態查看

[英]Add JavaScript code to View dynamically

我有一些代碼來顯示谷歌地圖。 在我的控制器中,創建javascript:

MapCode = string.Format("<script type='text/javascript'>init_map('my_map', {0}, {1}, 20)</script>", location.Location.Coordinate.Latitude, location.Location.Coordinate.Longitude)

但是我不能只是將其寫到我的觀點:

@ Model.MapCode

因為那只會顯示實際的javascript-不會執行它。

有沒有辦法做到這一點?

使用HtmlHelper.Raw()輸出原始HTML,而不對視圖進行編碼。

@Html.Raw(Model.MapCode)

您可以將location.Location作為模型傳遞,然后在視圖上執行此操作:

<script type='text/javascript'>init_map('my_map', '@Model.Coordinate.Latitude', '@Model.Coordinate.Longitude', 20)</script>

這樣,您不必從控制器構建腳本,這始終不是一個好主意。

我不認為將服務器端和客戶端(JavaScript和C#)代碼混合是一種好習慣。

或者,如果您使用的是jQuery,則可以使用jQuery.getScript() 這樣,您可以創建AJAX請求以獲取數據並在AJAX回調中進行操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM