リンクなどのあるすべてのページに同じバナーを持つWebアプリケーションがあります。これらのリンクのいずれかをクリックすると、javascript/jquery次のようにしてdivの内容を部分的に表示するか、ターゲットページにバナーが含まれている正規のHtml.ActionLinkを実行しますか?部分ビューをロードするときのMVCのベストプラクティス
ページ構造
<div id ="banner">
// banner content
</div>
<div id="mainContentDiv">
// changing content
</div>
だから私は、バナーは変更されません私のバナーにリンクを選択し、私は内容を変更するには、いくつかのjqueryの関数を呼び出す必要があります...
$('#mainContentDiv').load('/ControllerName/ActionName?args...');
...いくつかのコントローラアクションを呼び出し、私のメインコンテンツのdivで部分的なビューを返します。これはいい練習ですか?つまり、必要なコンテンツのみを読み込み、バナーをリロードする必要はありません。私もjsonを使用して部分的なビューを返そうとしていましたが、私がやっていることに対しては複雑すぎるようです。だから私の質問は...これは正しい操作であるか、これを行うには何か不利な点はありますか?
私はHtml.ActionLinkとしてすべてのものを持っています。静的なコンテンツをリフレッシュする必要がないリファクタリングの価値はあるのでしょうか?それはユーザーができないことを意味します各リンクがそれらを取っている場所を参照してください(javascriptのonclickイベントになるので、部分ビューを返すようにすべてのアクションメソッドを変更する必要があります(現在のビューからバナーを削除し、 。)
私はこれが好きです。良いリンクです。 –