我有一个mvc4/jquerymobile应用程序,我很难搞清楚为什么在从控制器操作返回RedirectToRoute(rvd)
后,重定向到网址没有显示。asp.net mvc jquerymobile redirectotroute不更改网址
我开始一个编辑网页上的流程与http://localhost/Report/Params/9
一种形式。我编辑表格,提交,Report
控制器,Params
[HttpPost]动作启动。它验证表单值,将它们拖到一边,然后将其中的很多内容与我的控制器(“Report”)和新操作(“Render”)属性一起添加到RouteValueDictionary中。
所有这一切都会正常,而我带到了“渲染”的说法,但在浏览器中显示的网址仍然http://localhost/Report/Params/9
我想浏览器URL显示http://localhost/Report/Params/9?p1=1&p2=2&p3=3
,而不是,因为我希望用户能够为参数集添加书签以备后用。
我错过了什么?我认为这个问题与jquerymobile处理提交按钮点击有关。我试图用data-ajax = false来缓解这种情况,但似乎没有任何帮助。
<button type="submit" data-theme="b" name="submit" value="submit-value" data-ajax="false">
Submit
</button>
感谢
编辑:这是我的重定向功能的紧密副本...
public ActionResult Params(FormCollection Params) {
RouteValueDictionary rvd = new RouteValueDictionary();
// example values //
rvd.Add("controller", "Report");
rvd.Add("action", "Render");
rvd.Add("id", 10);
rvd.Add("p1", 1);
rvd.Add("p2", 2);
rvd.Add("p3", 3);
RedirectToRouteResult rrr = RedirectToRoute(rvd);
return rrr;
}
你可以发布你的方法,其中返回重定向? – Jack
后更新重定向方法。 – reidLinden