在MVC 4中,如何將View中的JavaScript數組傳遞給帶有AJAX的Controller中的函數?C#MVC 4:將View中的JavaScript數組傳遞給控制器
這似乎並不工作:
$.ajax(
{
type: "POST",
url: "../Home/SaveTable",
data: { function_param: countryArray }
});
問題是,countryArray是在JavaScript查看一個全局數組和我檢查它具有傳遞之前,它的元素。但是,當saveTable函數接收數組時,函數會說它收到一個空字符串[]數組。
我只知道傳遞數組從控制器到查看,序列化複雜的數據類型與return Json(data, JsonRequestBehavior.AllowGet);
,然後反序列化將其設置爲「VAR」變量它。
所以我可能必須這樣做,但如何?
編輯1:
這裏是SaveTable功能的縮短版:
public string SaveTable(string[] function_param)
{
if (function_param != null && function_param > 0)
{
//some code
return "Success";
}
//The following code will run if it's not successful.
return "There must be at least one country in the Region.";
//Yeah it's always returning this b/c function_param is null;
}
控制器的外觀如何? –
檢查您的請求負載以查看數據是否真的發送到控制器。 – Saravana
@Mark我的控制器有ActionResult方法用於返回用於訪問數據庫的視圖和方法。這是一個用於根據傳入的數組訪問數據庫的函數。 – RedAces