将对象列表从ajax返回到mvc

时间:2017-02-19 15:55:22

标签: jquery asp.net ajax model-view-controller

我会告诉你我的问题,然后告诉你我的代码。 我想从ajax发送对象列表到mvc控制器(JsonPermissions) 但我总是变得无效。所有其他参数都是正确的。 getpermissions中的数据(稍后会看到)与mvc中的类相同。 试图改变一切,但似乎没有一个工作

这是ajax:

   $.ajax({
    url: '/Employees/ModifyEmployee',
    dataType: "json",
    type: "POST",
    contentType: 'application/json; charset=utf-8',
    async: true,
    data: JSON.stringify({
        employee: new JsonEmployee(),
        contact: new JsonContact(),
        person: new JsonPerson(),
        permissions: new JsonPermissions(),
        password: new JsonPassword()
    }),
    cache: false,
    success: function (data) {
        if (data.results.length) {                
            $('.wrapper').addClass('slideDown');
        }
    },
    error: function (xhr) {
        alert(xhr.responseText);
    }
})

这里是JsonPermissions(函数叫做getpermissions):

function GetPermissions()
{
     var values = $(".permission2employee input:checkbox:checked").map(function     () {
     row = $(this).closest("tr");

    return {
        EmployeePermissionsID: $(this).attr('id'),
        PermissionID: $(row).attr('id'),
        Description: $(row).find(".description").text(),
    }
}).get();

return values;

}

这是mvc代码:

   [HttpPost]
    public ActionResult ModifyEmployee(sp_GetEmployeeData_Result employee,
        sp_GetContact_Result contact,
        sp_GetPerson_Result person,
        List<sp_GetPermissions_Result> permissions,
        sp_GetPasswords_Result password)
    {
       // EmployeesModel.SetEmployeeData(employeeData);
        return Json(new { });
    }

1 个答案:

答案 0 :(得分:0)

傻我, 我需要发送新的jsonpermissions()。权限 不只是jsonpermissions()