2013-11-04 79 views
0

目前,我通過調用API並使用響應作爲值來填充ASP.NET中的網格視圖。生成沒有頁面加載的GridView

這是使用.aspx頁面,但我希望填充網格視圖而不做回發。

.aspx的

<div class="scroll" style="min-width: 310px; height: 400px; margin: 0 auto" 
    id="gridDiv" runat="server" visible="false"> 
    <asp:GridView ID="GridView" runat="server"> 
     <Columns> 
      //columns 
     </Columns> 
    </asp:GridView> 
</div> 

C#

public void populateGrid() 
{   
    DataTable dt = new DataTable(); 

    // add values to dt 

    GridView.DataSource = dt; 
    GridView.DataBind(); 
} 

有沒有一種方法,使用Javascript,我可以調用API來檢索值和填充網格視圖而不做回帖?

回答

2

Gridview是一個服務器控件,所以它需要所有服務器端的魔法才能使它工作。如果你想更新網格客戶端,你需要使用不同的解決方案。一個不是一個asp.net服務器控件。

1

您所說的GridView控件是ASP.NET服務器控件,因此它需要服務器端WebForms引擎來解析控件並生成HTML輸出;所以簡短的回答是否定的,你不能使用<asp:GridView>標記,然後讓客戶端渲染實際的網格視圖輸出。

但是,有客戶端模板解決方案來構建基於JavaScript的網格視圖狀控件,請閱讀Ajax Enabled Gridview using JavaScript in ASP.NET。此實現使用ASP.NET HTTP Handler從服務器檢索數據,然後使用JavaScript函數構建呈現給頁面的HTML輸出。這可以很容易地修改爲使用jQuery來對HTTP處理程序(.ashx),ASP.NET AJAX頁面方法,Web服務,ASP.NET Web API,WCF服務或事件REST端點進行AJAX調用。

0
  1. 短&快速:Use ASP.NET UpdatePanel
  2. 使用jQuery與任何客戶端電網插件JQGrid Demos
  3. 使用jQuery來操縱你的GridView控件(需要一大堆的工作!)Bind Dataset to Gridview using jQuery

我因爲您使用的是webforms,所以更贊成或者1和2。