谁能告诉我如何使用ActionLink和POST方法向控制器提交值?
我不想用按钮。
我猜它与jquery有关。
发布于 2010-01-12 21:23:56
您不能使用ActionLink
,因为这只会呈现一个锚<a>
标记。
您可以使用jQuery AJAX post。
或者只调用表单的submit方法,不管有没有jQuery (这可能是非AJAX的),也许在onclick
事件中使用您喜欢的任何控件。
发布于 2011-05-31 15:45:58
如果你正在使用ASP,你可以使用Ajax.ActionLink(),它允许你指定一个你可以设置为"POST“的MVC3方法。
发布于 2012-01-24 07:51:26
你可以使用jQuery为你所有的按钮做一个POST。只需为它们提供相同的CssClass名称。
如果你想在post之后做一个服务器端的RedirectToAction,那么在onclick javascript事件的末尾使用"return false;“,否则就返回视图。
Razor代码
@using (Html.BeginForm())
{
@Html.HiddenFor(model => model.ID)
@Html.ActionLink("Save", "SaveAction", "MainController", null, new { @class = "saveButton", onclick = "return false;" })
}
JQuery代码
$(document).ready(function () {
$('.saveButton').click(function () {
$(this).closest('form')[0].submit();
});
});
C#
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult SaveAction(SaveViewModel model)
{
// Save code here...
return RedirectToAction("Index");
//return View(model);
}
https://stackoverflow.com/questions/2048778
复制相似问题