В MVC 4, как вы передаете массив JavaScript в представлении для функции в контроллере с AJAX?
Это не похоже на работу:
$.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 not successful.
return "There must be at least one country in the Region.";
//Yeah it always returning this b/c function_param is null;
}