2014-09-04 165 views
0

我創建了一個彈出窗口,其中有一個文本框和一堆複選框。我給了所有的複選框一個值,這些值存儲在一個數組中。 現在我想將這個數組和文本框的值從Jquery傳遞給控制器​​動作。我怎樣才能做到這一點 ? 我已經通過所有關鍵字試穿了計算器,但它不工作...MVC剃刀從jquery傳遞複雜參數到控制器

我的jQuery的數據是follws:

$("#submit-button").click(function() { 
    var AccessBit = new Array(7); 
    AccessBit = BitLogic(); // integer array returned from BitLogic method 
    var role = $("#RoleName").val(); // Textbox value 
    var json = JSON.stringify(AccessBit); 
    alert(AccessBit); 
    $.ajax({ 
     url: "/Role/BitLogic", 
     type: 'POST', 
     contentType: 'application/json; charset=utf-8', 
     data: json, 

     dataType: 'json', 
     success: function (data) { 
      console.log(data); 
      window.location.reload(true); 
     } 
    }); 

    $("#createForm").dialog("close"); 
}); 

和控制器如下:

[HttpPost] 
public void BitLogic(int[][] AccessBit) 
{ 

} 

如何將角色值與Accesbit數組一起傳遞? AccessBit是二維整數數組。

+0

是您陣列已成功傳遞到控制器? – Mairaj 2014-09-04 05:14:22

+0

是的,我的陣列以這種方式成功傳遞給控制器​​... – Mayank 2014-09-04 05:17:04

+0

AccessBit?顯示accessbit的代碼 – 2014-09-04 05:17:15

回答

2

添加額外的參數,你POST方法

[HttpPost] 
public void BitLogic(int[][] AccessBit, string role) 
{ 
    .... 
} 

然後又傳遞值在你的Ajax功能

$.ajax({ 
    ..... 
    data: JSON.stringify({ AccessBit: AccessBit, role: role }), 

感謝Mairaj艾哈邁德

相關問題