使用 jquery post 将模型从 MVC 发布到操作

Posting model from MVC to action using jquery post

我正在尝试 post 我的模型到 MVC 动作,使用 jquery post。在 MVC 中,我正在执行以下操作以将我的模型序列化为 JSON:

MVC:

<div class="myModel" hidden="true">@Html.Raw(Json.Encode(Model))</div>

Javascript:

$(".confirm_yes").click(function (e) {
    e.preventDefault();

    // Get credit card session id
    var sessionid = $(this).parent().find(".payu_creditcard_sessionid").text();

    var myModel = $(".myModel").text();
    $.post("/payuwalletlink/removecreditcard", { model: myModel }, function (data) {

        //do whatever with the returned view.

    });
});

控制器:

[HttpPost]
public ActionResult RemoveCreditCard(CreditCardModel model)
{

    return View("PayUwallet");
}

但我的浏览器出现以下错误:

Failed to load resource: the server responded with a status of 500 (Internal Server Error)

你所做的似乎毫无意义。为什么要将模型传递给视图然后 post 它完全不变?。但是,如果需要,执行此操作的方法是将模型转换为 javascript 对象,然后 post 将其返回

var myModel = JSON.parse('@Html.Raw(Json.Encode(Model))');

$(".confirm_yes").click(function (e) {
  e.preventDefault();
  // Get credit card session id
  var sessionid = $(this).parent().find(".payu_creditcard_sessionid").text();     
  $.post('@Url.Action("removecreditcard", "payuwalletlink")', myModel , function (data) {
    ....
  });
});

不确定 var sessionid = .. 的用途(您似乎没有使用它)。

我怀疑你试图在 post 方法上删除一个对象,在这种情况下,只需传回对象的 ID