繁体   English   中英

Ajax向controller发送空参数

[英]Ajax sends empty parameters to controller

所以我正在从我的视图中对 controller 中的方法进行ajax调用,但它一直在发送空参数。 我在控制台中打印了这些值,这些值在那里,是正确的,但 controller 的输入参数为空。

在我看来,这是我的ajax

@model ModelLayer.Models.NotificationModel

@(Html.Kendo().Grid<ModelLayer.Models.TableNotificationModel>()
        .Name("successfullData")
        .ToolBar(e =>
        {
           e.Custom().Text("Зачувај").HtmlAttributes(new { id = "customSaveButton", @class = "floatRight" });
        })
        //code shortened for brevity

$("#successfullData").on("click", "#customSaveButton", function () {
        var model = JSON.parse('@Html.Raw(Json.Serialize(Model?.TableNotificationModel))');
        var saveType = 1;
        console.log("model", model)
        console.log("saveType", saveType)

        $.ajax({
            url: '@Url.Action("SaveFile", "Upload")',
            data: model,
            saveType: saveType
        })
    });

我在单击剑道网格按钮时调用 function 并将数据发送到 controller。我在控制台中有正确的数据

在此处输入图像描述

但我的 controller 另有说法

在此处输入图像描述

model 为空, saveType为 0。我在这里缺少什么? 为什么我要发送空参数?

在默认情况下执行 GET 的 AJAX 中,您的 controller 将需要匹配相同的 HTTP 动词。 如果它们都是 GET,它会将 Model 的 append 内容添加到查询字符串中,您不会有一个名为 model 的 object,而是 model 的所有属性

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM