首页 >web前端 >js教程 >如何在 ASP.NET MVC 中通过 FormData 附加和接收模型?

如何在 ASP.NET MVC 中通过 FormData 附加和接收模型?

Susan Sarandon
Susan Sarandon原创
2024-12-22 06:12:10898浏览

How to Append and Receive a Model via FormData in ASP.NET MVC?

在 Formdata 中附加和接收模型

要将模型对象作为 formdata 对象的一部分传递并在控制器中检索它,请考虑下列方法:

JavaScript:

  1. 创建一个 FormData 对象:

    var formdata = new FormData($('form').get(0));
  2. 转换模型到 JSON 使用JSON.stringify():

    let model = {
      EventFromDate: fromDate,
      EventToDate: toDate,
      ...
    };
    const modelJson = JSON.stringify(model);
  3. 将 JSON 字符串附加到表单数据:

    formdata.append("model", modelJson);

AJAX调用:

$.ajax({
  url: '@Url.Action("YourActionName", "YourControllerName")',
  type: 'POST',
  data: formdata,
  processData: false,
  contentType: false,
});

控制器:

  1. 使用 [HttpPost] 属性修饰操作以指示它接收 HTTP POST 请求。
  2. 声明适当模型的参数type:

    [HttpPost]
    public ActionResult YourActionName(YourModelType model)
    {
      // Your code to process the model here...
    }
  3. ASP.NET MVC 会自动将 JSON 模型字符串绑定到适当的模型类型。

此方法允许您将整个模型附加为JSON 数据到 formdata 并在控制器中将其作为模型对象检索,使您能够在控制器操作中使用复杂的模型。

以上是如何在 ASP.NET MVC 中通过 FormData 附加和接收模型?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn