在没有页面加载的情况下生成GridView

时间:2013-11-04 17:03:50

标签: c# javascript asp.net gridview

目前,我通过调用API并使用响应作为值来填充ASP.NET中的网格视图。

这是使用.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来检索值并填充网格视图而不做回帖?

3 个答案:

答案 0 :(得分:2)

Gridview是一个服务器控件,因此它需要所有服务器端魔术才能使其工作。如果要更新网格客户端,则需要使用其他解决方案。一个不是asp.net服务器控件。

答案 1 :(得分: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调用。

答案 2 :(得分:0)

  1. 简短&amp;快速:Use ASP.NET UpdatePanel
  2. 将jQuery与任何客户端网格插件JQGrid Demos
  3. 一起使用
  4. 使用jQuery操作gridview控件(需要大量工作!)Bind Dataset to Gridview using jQuery
  5. 由于您使用的是网络表单,我更赞成或者1和2。