簡體   English   中英

在Javascript中訪問ArrayList-ASP.Net MVC2

[英]Accessing ArrayList in Javascript - ASP.Net MVC2

我的模型中有ArrayList,並希望在javascript中對其進行迭代。 我正在使用以下代碼,但給了我錯誤:CS0103:名稱“ i”在當前上下文中不存在

for(var i=0; i <= <%=Model.KeyList.Count%>; i++)
{
    alert('<%=Model.KeyList[i]%>');      
}  

我該如何解決?

這是行不通的。 c#代碼在執行javascript代碼之前在服務器端執行,因此在執行c#代碼時變量i不存在。 我真的不能告訴您如何解決它,因為您沒有說您想做什么。 但是您需要在ac#循環中迭代列表服務器端,或者在js循環中迭代客戶端。 您不能將它們混合在一起。

該代碼不起作用。 在客戶端評估foreach,在服務器評估<%...%>指令。 因此,“ i”不存在,它僅存在於客戶端的瀏覽器中。

如果要使用JS解析列表,則需要將其轉換為javascript數組。 您需要產生的最終結果是用{}表示法收集對象的集合(如{ name: "a", value: "b" } )並用[]包裹。

因此,您需要生成此客戶端代碼並在客戶端上進行解析,或者在服務器上對其進行廢棄和處理。 或者,創建一個返回JsonResult並返回數組的操作結果; MVC框架應為您自動轉換; 您必須通過AJAX使用JavaScript進行請求。

HTH。

暫無
暫無

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

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