3
A
回答
0
由於該變量實際上並不存在於瀏覽器中,所以您的JavaScript運行時必須使用某種AJAX類型的技術。
簡單的舊ASMX Web服務可能是您最好的選擇。
當然,如果你只是想要它的初始值,你可以在頁面組合過程中將其設置爲文字。
雖然我沒有確切的格式化經驗。
6
你可以試試下面的辦法:
@{
var array = new [] {"foo", "bar"};
}
<script type="text/javascript">
var array = [@Html.Raw(String.Join(",", array.Select(s => "'" + s + "'")))];
alert(array[1]);
</script>
它系列化C#數組作爲一個JavaScript一個格式爲[「富」,「酒吧」。
3
這是您可能想考慮使用JSON的最佳示例。假設你正在使用ASP.NET網頁(而不是Web窗體/ MVC),在你的App_Code目錄制定,創建一個名爲Javascript.cshtml的輔助文件,用下面的代碼:
@using System.Web.Script.Serialization;
@helper ToJson(object obj) {
var ser = new JavaScriptSerializer();
@Html.Raw(ser.Serialize(obj))
}
現在,如果你的主頁你可以像這樣引用幫手:@Javascript.ToJson(myObj)
。因此,在您的頁面上,您可能會這樣做:
@{
var myCSharpObj = new { First = "1st", Second = "2nd" };
}
<script language="javascript">
var myJSObj = @Javascript.ToJson(myCSharpObj);
alert(myJSObj.Second);
</script>
+0
我只是做了幾乎完全相同的事情,只是意識到已經有一個內置的幫手! '@ Json.Encode'。它不會將它轉換爲「raw」,所以我創建了另一個助手,就像你的,但在裏面你可以放置'@ Html.Raw(Json.Encode(obj));'。 – mpen 2011-12-04 05:00:05
相關問題
- 1. 訪問PHP變量在JavaScript
- 2. 訪問Javascript變量
- 3. 訪問JavaScript變量
- 4. 在代碼後面的.cs文件中訪問javascript變量的值?
- 5. 在新窗口中訪問JavaScript變量
- 6. 在Symfony2中從javascript訪問php變量
- 7. 在Javascript邏輯中訪問EJS變量
- 8. 在.js文件中訪問JavaScript變量?
- 9. 在JavaScript中訪問PHP變量
- 10. 在JavaScript中訪問會話變量
- 11. 在javascript中訪問php變量
- 12. 在iframe中訪問Javascript變量
- 13. 在Django模板中訪問Javascript變量
- 14. JavaScript:在回調中訪問變量
- 15. 如何在Python中訪問JavaScript變量
- 16. 在angularjs中訪問javascript變量
- 17. TideSDK |在JavaScript中訪問Ruby變量
- 18. 在PHP變量中訪問Javascript
- 19. 如何在global.asax中訪問javascript變量?
- 20. 在java中訪問javascript變量
- 21. 在javascript中訪問flask.g變量
- 22. 在jsp中訪問javascript變量值
- 23. 在JavaScript中訪問內部變量
- 24. C#訪問在不同的.cs定義的變量文件
- 25. 訪問javascript全局變量
- 26. 從PHP訪問JavaScript變量
- 27. 從Javascript訪問C#變量?
- 28. 從JavaScript訪問C#變量
- 29. Javascript SetTimeout變量訪問
- 30. 的Javascript訪問變量
我正在開發Visual Studio 2010和MVC3 views.It的工作,但它強調@Html部分並說「條件編譯已關閉」 。我使用foreach填充cshtml中的var數組,並且項目數可能會不時變化。所以當序列化有可能運行一個循環??我怎麼做? – 2011-03-03 10:50:43
@Html部分是HtmlHelper類型的一個屬性,不應該是一個問題。我所顯示的代碼可以處理任意大小的數組。代碼的作用是首先引用所有字符串,然後將它們加入,生成另一個字符串「foo」,「bar」,「baz」,該字符串在頁面中輸出。 – 2011-03-03 11:43:03
如果我們有一個validationsummery作爲@ Html.ValidationSummary(true,「」);在@ {}標籤內,是否有可能將錯誤作爲字符串從@ {}標籤中的var變量中取出,然後從javascript中訪問?我怎麼做? – 2011-03-07 13:03:37