MVC - 无法通过 Ajax 调用从模型获取数据

问题描述 投票:0回答:1

我已经尝试了很多事情,正如您将在我的注释掉的代码中看到的那样。有效的(有点 - 到达控制器但没有数据)是没有注释掉的。我正在访问我的控制器,但所有数据都是 0。我需要传入整个 ViewModel,因为它有很多字段。预先感谢

这是我的 Ajax 不工作:

function summaryrpt() {     
    //alert('dd');
    //var JsonModel = '@Html.Raw(Json.Serialize(@Model))';
    //var summmodel = JSON.parse(JsonModel);
    //var jsonInput = @Model; 
    $.ajax({
        type: "POST",
        //data: { model = JSON.stringify(summmodel) },
        //data: JsonModel = JSON.stringify(JsonModel) ,
        //data: { JsonModel: JSON.stringify(@Model) },
        dataType: 'JSON',
        data: model = '@Html.Raw(Json.Serialize(@Model))',
        //data: { jsonInput: JSON.stringify(@Model) }',
        //url: '@Url.Action("ApproveSummaryReport", "Home")',
         url: '/Home/ApproveSummaryReport'
        
    }).done(function (res) {
        //alert('done');
    });            
}

控制器方法签名

[HttpPost]
public ActionResult ApproveSummaryReport(SummaryViewModel model) 

请参阅我尝试过的注释掉的代码。

ajax model-view-controller model
1个回答
0
投票

尝试以下操作:

function summaryrpt() {     
    var model = @Html.Raw(Json.Encode(Model));    
    $.ajax({
        type: "POST",
        url: '/Home/ApproveSummaryReport'        
        contentType: 'application/json; charset=utf-8',
        data: JSON.stringify(model),
        success: function (result) { }
     });           
}
© www.soinside.com 2019 - 2024. All rights reserved.