如何序列化模型,将其传递给ajax请求中的MVC控制器

我正在尝试将我的页面模型传递给我的控制器进行处理。 处理完信息之后,我想更新id“savedText”的div,以显示“Billing Information saved successfully successfully”。

在我看来,我有这个

function testingFunction() { var obj = $('testForm').serialize(); $.ajax({ url: '@Url.Action("TestingFunction", "BuildGiftCard")', dataType: 'json', success: function (result) { $("#savedText").html(result); }, contentType: 'application/json; charset=utf-8', data: JSON.stringify(obj) }); return false; } 

我在我的控制器中有这个:

 [HttpPost] public JsonResult TestingFunction(PurchaseModel model) { return Json("Billing information saved successfully."); } 

我究竟做错了什么?

当Chrome中的“检查元素”时,在网络选项卡中,它表示找不到我的控制器方法。

此外,对我来说,将整个模型从视图中获取到控制器的函数(本例中为TestingFunction)非常重要,这样我就可以获取表单信息并保存它。 我正在尝试.serialize()函数,但结果是obj =(空字符串)。

三件事:

  1. $('testForm')应该是$('.testForm')$('#testForm') 。 因为你正在尝试选择
  2. 如果你只是发送表格,它不需要是json。
  3. 尝试post请求:

 $.ajax({ url: '@Url.Action("TestingFunction", "BuildGiftCard")', dataType: 'json', success: function (result) { $("#savedText").html(result); }, data: $('#testForm').serialize(), type: 'POST' });