通过Ajax将参数传递给MVC Action始终为null

问题描述

我查看了相关问题以形成我的ajax请求,但是由于acion中的param始终为null,所以我无法弄清楚为什么这不起作用

我已经完成了console.log,以检查'data:{data:item}'中的项目是否具有值

 //action
 public async Task<IActionResult> DeleteMedia(string data)
 {

 $("#mediaTable").on('click','td:nth-child(7)',function () {
        var item = $(this).parent().attr("id");
        $("#MediaTodownload").val(item);
        $.ajax({
            url: '@Url.Action("DeleteMedia","Home")',type: 'get',cache: false,processData: false,contentType: false,data: { data: item },success: function (data) {
                location.href = data;
            }
        });
    });

解决方法

您只需要发送字符串作为JSON:

data: JSON.stringify(item)