Javascript 如何将从jQuery创建的数组传递给控制器方法?

Javascript 如何将从jQuery创建的数组传递给控制器方法?,javascript,arrays,asp.net-mvc-4,view,controller,Javascript,Arrays,Asp.net Mvc 4,View,Controller,我的问题可能是重复的。但是,我没有将返回的值从视图中获取到控制器中 正如链接中定义的,我为返回的值定义了一个模型 但不同的是,我并没有为此使用AJAX调用。我使用以下stmt获取一行的值,并将其转换为一个值数组: var arrayOf = $(currentSelected).get(0); var partialView = ('@Url.Action("PartialView")' + '/' + arrayOf); 这里partialView正确地指向了我的控制器方法,

我的问题可能是重复的。但是,我没有将返回的值从视图中获取到控制器中

正如链接中定义的,我为返回的值定义了一个模型

但不同的是,我并没有为此使用AJAX调用。我使用以下stmt获取一行的值,并将其转换为一个值数组:

    var arrayOf = $(currentSelected).get(0);
    var partialView = ('@Url.Action("PartialView")' + '/' + arrayOf);
这里partialView正确地指向了我的控制器方法,并且控制传递到那里

但是,尽管“arrayOf”中的值正确,我所在的数组(在控制器中)始终显示为null,并且我无法继续

这是我的控制器:

     public ActionResult PartialView(ChildColumns[] arrayOf) /*arrayOf is always null, WHY*/
    {
        //stmts
        return PartialView("ChildPartialView");
    }

这里的ChildColumns是具有所有相关字段的模型。

我将使用ajax调用,正如CM Kanode所提到的。差不多

$.ajax({
    url: "@(Url.Action("PartialView", "Controller")",
    type: "POST",
    data: arrayOf
    cache: false,
    async: true,
    success: function (result) {
        $(".divContent").html(result);
    }
});

razor代码将首先在服务器上执行,然后将该信息传递到javascript将执行的页面。如果您确实想要将javascript数组传递给部分视图,那么听起来您需要使用Ajax,否则,首先执行partialview。success:function(result)??结果是什么?在我的例子中,controller方法将实际返回一个局部视图。是的,这就是您想要的。这将采用该局部视图,并将其放入您想要的任何容器中。(在我的示例中class=divContent)我的控制器很好?。。。我应该继续使用它吗?是的,您没有将模型传递给局部视图,但可能不需要。看起来不错。但是如果我想退回一个模型,我该怎么办?