2011-11-11 128 views
0

我正在嘗試將json數組傳遞給我的控制器,但與它一起掙扎。將json對象的列表傳遞給控制器​​方法

下面是代碼

Javascript代碼

var options = { 
        'url': "Collection.mvc/ReorderAndDeleteTitles", 
        'data': "dids=1&rTitles=" + ReorderGridData(), 
        'type': "POST", 
        'dataType': "json", 
        'traditional': true, 
        'killOverlays': false, 
        'showloader': false, 
        'onSuccess': function (data) { 

        }, 
        'onError': function (data) { 
         ShowAjaxError(data); 
         $().killOverlays(); 
        } 
       }; 
       $().ajaxCall(options);//used for making ajax calls 

//returns the titleID and its new order 
function ReorderGridData() { 
    var ssIds = []; 
    $('table.resultsTable').find('tbody tr.updated').each(function (index) { 
     var titleId = $(this).find('td.th_collectionTitleId').attr('title'); 
     var newOrder = $(this).find('input.js-sortText').val(); 
     ssIds.push({ Records: { Id: titleId, NewOrder: newOrder} }); 
    }); 

    return ssIds; 
} 

控制器代碼

public class TitleReorder 
     { 
      public string Id { get; set; } 
      public string NewOrder { get; set; } 
     } 


     [HttpPost] 
     public void ReorderAndDeleteTitles(string dids, List<TitleReorder> rTitles) 
     { 

     } 

當我調試我得到rTitles PARAM爲空

請告知

回答

0

您可以使用JSON請求將複雜的JavaScript文字發送到控制器操作。看看following blog post

+0

我害怕我不能在我的項目中使用更多的插件。 – Amit

+0

@Amit,您使用的是哪個版本的MVC? –

+0

我使用mvc3與jquery 1.4+ – Amit

相關問題