2012-04-18 109 views
2

是否可以讀取從MVC控制器傳遞給JavaScript的數組內容?將數組從MVC控制器傳遞給Javascript

這是我的控制器返回一個數組的方法。 (之前嘗試過但沒有成功)

public string[] GetAllEvents() 
{ 
    string[] array = new string[2]; 
    array[0] = "a"; 
    array[1] = "b"; 

    List<string> lst = new List<string>(); 
    lst.Add("a"); 
    lst.Add("b"); 
    return array; 
} 

這是我從中調用Controller方法的JavaScript函數。

function GetAllEvents() { 
    $.ajax({ 
     type: "GET", 
     url: "/Service/GetAllEvents", 
     success: function (result) { 
      alert(result.toString() + " " + result[0]); 
     }, 
     error: function (req, status, error) { 
      //alert("Error"); 
     } 
    }); 
}; 

結果是一個System.String [],結果[0]給我'S'作爲結果。

+1

您看到的結果可能實際上是字符串「System.String []」,而'result [0]'是該字符串中索引爲0的字符,因此爲「S」。按照[SLaks的答案](http://stackoverflow.com/a/10213690/74757),你應該看到預期的結果。 – 2012-04-18 16:36:52

回答

4

MVC操作應返回ActionResult s。你可以return Json(list, JsonRequestBehavior.AllowGet),它會工作。

相關問題