使用 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
。
我正在尝试 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
。