MVC3 @Html.ActionLink有没有可能执行Post 提交
[解决办法]
只要你@Html.ActionLink 标签所处的表单提交方式为Post
或者直接在onclick中直接post表单
最终解析为a标签,那么你可以当做普通的a处理
<a href="javascript:$('#Form').submit();"
[解决办法]
只要你@Html.ActionLink 标签所处的表单提交方式为Post
或者直接在onclick中直接post表单
最终解析为a标签,那么你可以当做普通的a处理
<a href="javascript:$('#Form').submit();"
那个actionlink 是在@using (Html.BeginForm())这个里面的,也就是有提交吧?
为什么我执行代码在action里面断点都没进去PSOT
[HttpPost]
public ActionResult Article_List()
默认的链接点击是url传递,是get方式
一楼是让你改成onclick事件触发
那actionlink 应该怎么改?
@Html.ActionLink("更多>>", "Article_List", new { more = ViewData["V3"] }, new { @class = "more pull-right" })
我就知道new一个onclick事件 只是不知道如何Post
@using (Html.BeginForm("LogOff", "Account", FormMethod.Post, new { id = "logoutForm" })) {
@Html.AntiForgeryToken()
<a href="javascript:document.getElementById('logoutForm').submit()">注销</a>
}
<%= Html.ActionLink("已完成", "Complete", new { controller = "AJAXCall", eid = t.UserTaskId, tid = t.TaskId }, new { @class = "onstate", filter = ViewData["Filter"], tips = "已完成", op = "complete" })%>
$(".onstate").click(function (e) {
e.preventDefault();
var link = $(this);
$.ajax({
type: "post",
url: link.attr("href"),
dataType: "json",
success: function (data, status) {
if(status == "success") {
// 成功之后的处理代码
}
},
error: function (data) { }
});
return false;
});
建议你用ajax 这样写
只要你@Html.ActionLink 标签所处的表单提交方式为Post
或者直接在onclick中直接post表单
最终解析为a标签,那么你可以当做普通的a处理
<a href="javascript:$('#Form').submit();"
那个actionlink 是在@using (Html.BeginForm())这个里面的,也就是有提交吧?
为什么我执行代码在action里面断点都没进去PSOT
[HttpPost]
public ActionResult Article_List()
默认的链接点击是url传递,是get方式
一楼是让你改成onclick事件触发
那actionlink 应该怎么改?
@Html.ActionLink("更多>>", "Article_List", new { more = ViewData["V3"] }, new { @class = "more pull-right" })
我就知道new一个onclick事件 只是不知道如何Post
参考[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult LogOff()
{
FormAuthService.SignOut();
var ReturnUrl = System.Web.HttpContext.Current.Request.UrlReferrer == null ? "/Home/Index" :
(System.Web.HttpContext.Current.Request.UrlReferrer.AbsoluteUri == System.Web.HttpContext.Current.Request.Url.AbsoluteUri ? "/Home/Index" : System.Web.HttpContext.Current.Request.UrlReferrer.AbsoluteUri);
return Redirect(ReturnUrl);
}
[解决办法]提交了 然后再控制器方法中去上一个链接地址 再跳回去
最简单的是你用在onclick里面用ajax提交。
举例如下:
a标签:<%= Html.ActionLink("已完成", "Complete", new { controller = "AJAXCall", eid = t.UserTaskId, tid = t.TaskId }, new { @class = "onstate", filter = ViewData["Filter"], tips = "已完成", op = "complete" })%>
javascript onclick响应事件:
$(".onstate").click(function (e) {
e.preventDefault();
var link = $(this);
$.ajax({
type: "post",
url: link.attr("href"),
dataType: "json",
success: function (data, status) {
if(status == "success") {
// 成功之后的处理代码
}
},
error: function (data) { }
});
return false;
});
不要用ajax
[解决办法]
再=在 去=取
[解决办法]
这个东西好像挺有用的,下载看看
[解决办法]
人呢 求指导
[解决办法] 我就想知道我的actionlink 能不能执行Post 如果可以的话应该怎么弄才可以跳进来
@Html.ActionLink("更多>>", "Article_List", new { more = ViewData["V3"] }, new { @class = "more pull-right" })
[HttpPost]
public ActionResult Article_List()
{
}
需求:点击传递参数,跳转到action然后Post的
一 用ajax直接post
二 ajax提交表单
三 同步提交表单,控制器方法中跳转到当前链接
建议用8楼方法
PS:少用那些HtmlHelper方法 自己写a标记更简洁