1

典型的な管理ポータルを構築しています - 上部と左側のメニュー用に 2 つの共有部分ビュー .cshtml ファイルがあります。そして、主なコンテンツは通常のビュー ファイルです。

たとえば、「ビュー」には「dashboard.cshtml」と「settings.cshtml」などがあります。これらの中で、 @Html.Partial("_Layout_topmenu") と @Html.Partial("_Layout.leftnav") を呼び出します

「ダッシュボード」から「設定」までクリックして「ダッシュボード」に戻ると、画面全体が更新されることを除いて、すべてが「機能」しています。メイン コンテンツ部分のみが更新されることを期待していましたが、上部と左側のナビゲーションは部分的なビューであるため同じままです..何か不足していますか?

ActionResult 型を返す「Dashboard」および「Settings」GET メソッドのコントローラー コードでは、単純に view(); を返しています。

//site/controller/view1 から //site/controller/view2 に (jQuery/AJAX マジックを使用せずに) 移動しながら、トップ メニューと左側のナビゲーション ペインを保持し、メイン コンテンツを変更し続けることは可能ですか? . ?

ありがとう!

4

1 に答える 1

3

フレームを使用しているとは思わないか、部分ビューのhtmlをajax経由でそれぞれのコンテナに手動でロードしていない限り、通常のhttpリクエストを行っているだけです。部分的なビューはクライアント側ではなくサーバー上にのみあるため、特定のページをリクエストすると、すべてが再読み込みされます。

コンテンツ領域を他の領域とは別にロードしたい場合はPartialView()、コントローラーメソッドから戻り、jQuery のメソッドを介してそのメソッドを呼び出すことをお勧めします.load()


編集

jquery/その他の魔法を使わずに、いいえ。ページをリクエストすると、ページがロードされます。これは驚くべきことではありません。

于 2012-05-13T04:52:02.213 に答える