2013-12-16 19 views
0

我的問題可能是this question的副本。但是,我沒有從視圖中得到返回的值到我的控制器中。如何將從jQuery創建的數組傳遞給控制器​​方法?

在鏈接中定義的,我有一個爲返回的值定義的模型。

但區別在於,我沒有使用這個AJAX調用。我得到一個行的值,變成值的數組使用此語句:

var arrayOf = $(currentSelected).get(0); 
    var partialView = ('@Url.Action("PartialView")' + '/' + arrayOf); 

這裏partialView正確地指出了我的控制方法和控制通過那裏。

但是,我的數組(在控制器中)總是顯示null,儘管'arrayOf'中有正確的值,並且我無法繼續前進。

這裏是我的控制器:

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

這裏ChildColumns是具有所有相關領域的典範。

+0

剃鬚刀代碼會在服務器上執行* first *,然後將該信息傳遞到您的頁面,在那裏執行javascript。這聽起來像你需要使用Ajax,如果你確實想要將javascript數組傳遞給你的局部視圖,否則,首先執行partialview。 –

回答

1

我會爲CM Kanode提到的一個ajax調用。類似於

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

成功:function(result)??我應該如何傳遞結果?在我的情況下,控制器方法正在返回部分視圖。 – user2771399

+0

是的,那就是你想要的。這將採取這種局部視圖,並把它放到你想要的任何容器中。 (在我的例子中class = divContent) –

+0

我的控制器很好嗎?...我應該繼續使用它嗎? – user2771399

相關問題