2013-03-06 40 views
0

我需要能夠使用ajax調用將淘汰賽視圖模型和一些附加數據發佈到MVC發佈方法。在ajax後發佈淘汰賽和其他數據

我的代碼如下所示

getResultsModel = function() { 
     var ogName = $('#resultsname').val(); 

     var Ids = []; 

     for (var i = 1; i < $('#searchResults >tbody >tr').length; i++) { 
      var rowNum = i - 1; 

      var id = $('#ParticipantId' + rowNum).html(); 

      Ids.push(id); 
     } 
     var resultsModel = { 
      'orgGroupName': ogName, 
      'Ids': Ids 
     }; 

     return resultsModel; 
    }; 

    $("#savequery").click(function() { 

     var model = getResultsModel(); 

     $.ajax({ 
      url: "/Participant/SaveQuery", 
      type: "POST", 
      data: {      
       'model': JSON.stringify(model), 
       'viewModel': ko.mapping.toJSON(viewModel) 
      }, 
      contentType: "application/json; charset=utf-8", 
      success: function (result) { 
       alert('Query Saved Ok'); 
      }, 
      error: function (jqXHR, textStatus, errorThrown) { 
       alert("Status: " + textStatus + " Error: " + errorThrown); 
      } 
     }); 
    }); 

當我嘗試後,究竟是什麼

+0

請發佈錯誤信息以及您的控制器操作! – nemesv 2013-03-06 08:35:54

+0

您要發送的數據必須是有效的json – nav0611 2013-03-06 08:36:33

回答

0

正確的語法管理使用以下

解決它AJAX調用imediately返回一個錯誤
 $("#savequery").click(function() { 

     var model = getResultsModel(); 

     var resultsModel = { 
      'results': model, 
      'viewModel':viewModel 
     };   

     resultsModel = ko.toJSON(resultsModel); 

     $.ajax({ 
      url: "/Participant/SaveQuery", 
      type: "POST", 
      data: resultsModel, 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (result) { 
       alert('Query Saved Ok'); 
      }, 
      error: function (jqXHR, textStatus, errorThrown) { 
       alert("Status: " + textStatus + " Error: " + errorThrown); 
      } 
     }); 
    });