• 获取ascx绑定数据后的HTML


    假如我们要用JS显示一个TABLE,我们需要用ajax从后台获取一个数据集合 如DataTable或List等,然后再在JS里循环遍历,由于要控制样式等等,所以感觉有点麻烦。所以我就想在后台把HTML生成了,在客户端直接获取HTML,上代码:

    在ascx中的代码

    <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl1.ascx.cs" Inherits="WebApplication1.WebUserControl1" %>
    <form id="form1" runat="server">
    <asp:GridView ID="GridView1" runat="server">
    </asp:GridView>
    </form>

    在cs中的代码

    //这里仅仅是手动组装了数据源
    DataTable dt = new DataTable();
    dt.Columns.AddRange(
    new DataColumn[] { new DataColumn("Column1"), new DataColumn("Column2") });
    DataRow dr
    = dt.NewRow();
    dr[
    "Column1"] = "1";
    dr[
    "Column2"] = 2;
    dt.Rows.Add(dr);
    //这里才是关键代码
    WebUserControl1 wuc = this.LoadControl("/WebUserControl1.ascx") as WebUserControl1;
    wuc.GridView1.DataSource
    = dt;
    wuc.GridView1.DataBind();
    Page p
    = new Page();
    p.Controls.Add(wuc);
    StringWriter tw
    = new StringWriter();
    HttpContext.Current.Server.Execute(p, tw,
    false);
    //html就是tw.ToString()啦
    Response.Write(tw.ToString());
  • 相关阅读:
    POJ1201 Intervals
    POJ3169 Layout
    POJ1692 Crossed Matchings
    POJ1671 Rhyme Schemes
    POJ1742 Coins
    BZOJ2662: [BeiJing wc2012]冻结
    BZOJ 2330: [SCOI2011]糖果
    NOIP2015提高组T2 洛谷P2661 信息传递
    洛谷P1197 [JSOI2008]星球大战
    HDU3538 A sample Hamilton path
  • 原文地址:https://www.cnblogs.com/mrliuc/p/2098273.html
Copyright © 2020-2023  润新知