asp.net MVC句柄部分回传响应
问题描述:
我有多个页面包含相同的局部视图。该部分包含张贴到某个操作的表单。在发布帖子之后,我想返回到该帖子前的页面。什么是最好的方法来做到这一点?asp.net MVC句柄部分回传响应
例子:
管窥: 形式发布操作=音符/创建/
页
第1页: 产品/指数/
第2页: 客户/信息/
page3: order/details/
这3个页面包含部分视图,在张贴部分视图时,它将重定向到note/create /。我需要回到成功的原始页面。
感谢 西蒙
答
要么通过AJAX后发生 - 因此不离开页面,或电流控制器/操作/ ID(或URL作为一个整体)作为参数传递给动作,处理该职位。请参阅下面的示例。
<% using (Html.BeginForm(...)) { %>
<input type='hidden'
name='currentController'
value='<%= ViewContext.RouteData["controller"] %>' />
<input type='hidden'
name='currentAction'
value='<%= ViewContext.RouteData["action"] %>' />
<input type='hidden'
name='<%= ViewContext.RouteData["id"] %>' />
...rest of form...
<% } %>
或
<% using (Html.BeginForm(...,
new { ReturnUrl = Url.Action(ViewContext.RouteData["action"],
ViewContext.RouteData) }, ...)) { %>
....
<% } %>
答
您可以在一个隐藏字段保存当前页面地址和发布采购信息发送。
在你的部分观点:
<script type="text/javascript">
var field = document.getElementById("currentPage");
field.value=document.location.href;
</script>
<form method="post" action="note/create/">
...
<input type="hidden" value="" id="currentPage" name="currentPage" />
</form>
然后检索隐藏输入的地址和用户重定向到它。