2009-10-01 175 views
1

注入字符串轉換成一個javascript我有一個包含JavaScript函數,我需要的init /調用頁面加載時的視圖。該方法是靜態的,但它需要與一些參數(Id的列表)調用 - 這個列表是動態的,並根據一些查詢字符串參數(我不能從查詢字符串生成列表客戶端)。在一個asp.net MVC視圖

所以我需要生成這個列表服務器端。

我的選擇是,據我看到它:

1)請在客戶端上Ajax調用,從服務器請求的ID。

2)直接在視圖上注入/插入id(它是viewmodel上的一個屬性)。

不管我怎麼打開它,選項2似乎是最理智的。我已經在viewmodel上準備好了數據,因此當視圖被填充時就準備好了 - 我沒有理由向服務器發出額外的請求,只是爲了獲取數據。

我知道很多人會認爲這是一個壞主意,動態注入一個靜態的JavaScript。爲此,我可以簡單地只注入一個新的JavaScript,只保留Ids和一個對靜態JavaScript方法的調用,這正是我真正想要做的。

雖然我的問題是這樣的:當我編寫我的asp.net <%=%>包含,VS IDE停止highligting,讓我覺得我可能是在錯誤的軌道上?當然,我不是唯一需要在asp.net mvc的JavaScript塊中輸出內容的人嗎?

+0

如果VS停止突出,這並不意味着該視圖解析器不會回升服務器端腳本語句。 – 2009-10-01 06:05:56

回答

1

路線2(視圖模型)是肯定要走的路和

<script type="text/javascript> 
<%= Model.JavascriptToInsert %> 
</script> 

應該工作(儘管缺少VS的高亮)

它不會在一個單獨的JS文件的工作,雖然。它必須在你自己的觀點中。

善良,

+0

我只是想把靜態的JavaScript放在一個單獨的js文件中 - 從動態中分離出靜​​態的javascript。但是,謝謝,這就是我目前正在做的,只是想知道我是否錯過了一些東西 - 我討厭這樣的高光沒有出現...... – 2009-10-01 06:17:47

相關問題