In MVC 4, wie übergibt man ein JavaScript-Array in der Ansicht auf eine Funktion im Controller mit AJAX?C# MVC 4: Übergeben von JavaScript-Array in Ansicht an Controller
Dies scheint nicht die Arbeit:
$.ajax(
{
type: "POST",
url: "../Home/SaveTable",
data: { function_param: countryArray }
});
Problem ist, ist countryArray ein globales Array in der JavaScript-Ansicht, und ich habe Sie sicher, dass es Elemente in sich hat, bevor übergeben wird. Wenn die saveTable-Funktion das Array empfängt, sagt die Funktion jedoch, dass sie ein null string [] -Array empfangen hat.
Ich weiß nur, dass Arrays von dem -Controller zur Ansicht Sie serialisiert komplexe Datentypen mit return Json(data, JsonRequestBehavior.AllowGet);
und dann deserialisieren es, indem es auf ein „var“ Variable übergeben.
Also muss ich wahrscheinlich auch dafür, aber wie?
Edit 1:
Hier ist die verkürzte Version der SaveTable Funktion:
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;
}
Wie sieht der Controller aus? –
Überprüfen Sie die Nutzdaten Ihrer Anfrage, um festzustellen, ob tatsächlich Daten an den Controller gesendet werden. – Saravana
@Mark Mein Controller verfügt über ActionResult-Methoden zum Zurückgeben von Sichten und Methoden zum Zugriff auf die Datenbank. Dies ist eine Funktion, die verwendet wird, um auf die Datenbank gemäß dem übergebenen Array zuzugreifen. – RedAces