2013-03-14 46 views
0

我想調用兩個部分視圖,但我的程序試圖填充我的網格之前,我通過它的搜索參數。我無法弄清楚如何在我將它傳遞給搜索框中的文本之前,不要試圖呈現webgrid。 這是我的局部視圖:使用數據網格的部分視圖

<div class="webgrid-wrapper"> 
    <div class="webgrid-title">Values</div> 
    <div id="grid"> 
     @grid.GetHtml(
tableStyle: "webgrid", 
     headerStyle: "webgrid-header", 
     footerStyle: "webgrid-footer", 
     alternatingRowStyle: "webgrid-alternating-rows", 
     columns: grid.Columns(
      grid.Column("Id", "ID"), 
      grid.Column("Name", "Name") 
     ) 
     ) 
</div> 
</div> 
</div> 

這是我的主頁視圖在那裏我既拉動的部分觀點爲:通過檢查,如果它的搜索參數

<section class="featured"> 
    <div class="content-wrapper"> 
     <hgroup class="title"> 
      <h1>@ViewBag.Title</h1> 
      <h2>@ViewBag.Message</h2> 
     </hgroup> 
    </div> 
</section> 
@using (Html.BeginForm("Analysis", "Home", "POST")) 
{ 
<div class="searchField"> 
    <div class="searchbox"> 
     Search: <input type="text" name="Search" /> 
     <input type="submit" value="Submit"> 
    </div> 
</div> 
} 


@Html.Partial("PartialChemAnalysis") 
@Html.Partial("PartialSlagView") 

回答

0

你可以這樣做有一個值,如果沒有,那麼你不必渲染網格。

在控制器

public ViewResult Analysis(string search) { 
     ViewBag.DisplayGrid = !string.IsNullOrEmpty(search); 
     //do you logics then return 
    } 

在在初始負載,或者如果你的視圖

@if (ViewBag.DisplayGrid != null && ViewBag.DisplayGrid) { 
     //Render your partial since its true. 
      @Html.Partial("PartialChemAnalysis") 
      @Html.Partial("PartialSlagView") 
    } 

沒有搜索參數。 viewbag將被設置爲false,並且您的部分將不會呈現。 ,如果搜索參數有值,將會呈現。