2009-05-08 18 views
7

私はいくつかの条件に応じて、ajax経由で部分的なビューを返すか、別のコントローラ/アクションにリダイレクトする必要があるアクションメソッドがあります。正しいビューが返されますが、完全に新しいページにリダイレクトするのではなく、AjaxフォームUpdateTargetIdに配置しています。誰でも私がこれをどのように達成できるか考えていますか?Ajaxフォームのポストからリダイレクト

答えて

16

のために、あなたの問題を解決するのに役立ち、そして他のコントローラに現在のページを変更するには、あなたのjavascriptを挿入することができように。 jQueryは、あなたが戻ってきた結果を使って何をすることができるか、さらに多くのコントロールを提供します。これがオプションでない場合は、OnCompleteコールバックを見て、渡されるデータを確認し、そこからリダイレクトされるURLを取得する方法があるかどうかを確認することができます。

JavaScriptResultを返すと、AJAXの呼び出し方法に関係なく実行されます。

return JavaScript("window.top.location.href ='" + Url.Action("Action") + "';"); 
+0

お手数をおかけしていただきありがとうございます。 –

1

は、私は、これはjQueryのではなく、MVCのAjaxを使用するようにリファクタリングと思うこのlinkは例

window.location = 'controller/action'; 
関連する問題