2012-02-24 3 views
1

例と呼ばれる1つのビューを更新し、異なる部分ビューを1つのhtml divタグにロードする機能があります。以下の場合、URLパラメータが検索の場合は、URLパラメータがIDまたは結果のグリッドの場合、ページに詳細部分を表示します。mvc3とjQueryを使用してURLパラメータに応じて特定の部分表示をロード

オプションのURLパラメータ: .... /例ID = 1234 .... /例探索= CCC

ユーザは、上記と_details.cshtml又は_gridのいずれか一方に渡すだろうか?。 cshtmlは下の詳細divを更新します。私はちょうどこの部分図フィルタリングが行われ、jqueryのを取る場所にまたはコントローラにこだわって

<div id="Details"></div> 

Example.cshtml

divタグ?

ご協力いただければ幸いです。

答えて

2

コントローラはビ​​ューにビューモデルを渡す必要があります。このビューモデルの部分をロードすることができ:

public class MyViewModel 
{ 
    public string DetailsPartial { get; set; } 
} 

、次にIDの存在又は検索パラメータに基づいて、コントローラは、このプロパティを移入します。

public ActionResult Index(int? id, string search) 
{ 
    var model = new MyViewModel 
    { 
     DetailsPartial = (id != null) ? "_details" : "_grid" 
    }; 
    return View(model); 
} 

と対応するビューで:

@model MyViewModel 
... 
<div id="Details"> 
    @Html.Partial(Model.DetailsPartial) 
</div> 
+0

すばやく返信いただきありがとうございます。私はそれを試してみましょう。 – GPB

+0

あなたのソリューションは素晴らしい作品です。ありがとうございます。 – GPB

関連する問題