2013-11-22 6 views
0

У меня есть apicontroller, который возвращает список для успеха части Ajax функции:Как я могу получить список моделей от ajax до контроллера?

var inputdata = { 
     'InsPayInsuranceID': insPayInsuranceID 
     , 'InstallmentDistance': installmentDistance 
     , 'InsPayNumber': insPayNumber 
     , 'InsPayFirstInstallmentDate': insPayFirstInstallmentDate 
     , 'HasInsPayWitTax': insInsPayWitTax 
     , 'InsPayRatio': (insPayRatio > 0) ? insPayRatio : 0 
    } 

    $.ajax({ 
     url: '/api/InstallmentApi', 
     type: 'Get', 
     datatype: 'json', 
     contentType: "application/json; charset=utf-8", 
     traditional:true, 
     data: inputdata, 
     success: function (result) { 
      $("#GridPan").load('@Url.Action("ReturnMyPartial", "Insurance")', result); 
     } 

Когда «ReturnMYPartial» называется в успехе части AJAX и отправляется «результат» (обратный список из apicontroller Аяксу) к нему , аргумент «ReturnMyPartial» имеет значение null!

Как я могу решить эту проблему и получить список?

«ReturnMyPartial» контроллер:

public ActionResult ReturnMyPartial(List<INS_InsPaymenttDetails> myIns)//int InsuranceID , string MyInsNO) 
    { 
     //// Some Codes... 

     return PartialView("_MyPartial", myIns); 
    } 

ответ

0

из этого АЯКС вызова есть средняя часть, что вы не включили. Я не знаю, что делает InstallmentApi. Это метод, с помощью которого ваш вызов ajax вызывает вызов, и результат будет пустым, будет оттуда. Я хотел бы попробовать переписывать вещи, как этот

$.ajax({ 
    url: '@Url.Action("ReturnMyPartial", "Insurance")', 
    type: 'Get', 
    datatype: 'json', 
    contentType: "application/json; charset=utf-8", 
    traditional:true, 
    data: inputdata, 
    success: function (result) { 
     $("#GridPan").load(result); //I use .html but looking up .load this should work also 
    } 
}) 

контроллер будет принимать входные параметры, которые соответствуют Inputdata

public PartialViewResult ReturnMyPartial(string InsPayInsuranceID, etc) 

и на контроллере вы можете позвонить InstallmentApi, чтобы получить список и передать его через к частичному

var myIns = InstallmentApi(parameters); 
return PartialView("_MyPartial", myIns); 
Смежные вопросы