1

mvc4/jquerymobile アプリケーションを持っていますがRedirectToRoute(rvd)、コントローラー アクションから を返した後、リダイレクト先の URL が表示されない理由を理解するのに苦労しています。

のフォームを使用して編集ページでプロセスを開始しますhttp://localhost/Report/Params/9。フォームを編集して送信すると、ReportコントローラーのParams[HttpPost] アクションが起動します。フォームの値を検証し、それらを少し変更してから、コントローラー (「レポート」) および新しいアクション (「レンダリング」) プロパティと共に、それらの多くを RouteValueDictionary に追加します。

これはすべて正常に行われ、「レンダリング」ビューが表示されますが、ブラウザーに表示される URL はそのままです。http://localhost/Report/Params/9

http://localhost/Report/Params/9?p1=1&p2=2&p3=3ユーザーが後で使用するためにパラメーターセットをブックマークできるようにしたいので、代わりにブラウザーの URL を表示したいと思います。

私は何が欠けていますか?この問題は、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;
}
4

0 に答える 0