asp.net 下 ext填充grid代码 .

print ?
  1. /** 
  2.  * @author fox 
  3.  */  
  4. Ext.onReady(function() {  
  5.     Ext.BLANK_IMAGE_URL = 'extjs/resources/images/default/s.gif';  
  6.     Ext.QuickTips.init();  
  7.     //var sm = new Ext.grid.CheckboxSelectionModel();   
  8.     var cm = new Ext.grid.ColumnModel([  
  9.         new Ext.grid.RowNumberer(),  
  10.         //sm,   
  11.         { header: '用户编号', dataIndex: 'user_code', sortable: true },  
  12.         { header: '电表编号', dataIndex: 'meter_num' },  
  13.         { header: '购电量', dataIndex: 'pur_power' },  
  14.         { header: '购电时间', dataIndex: 'pur_date' }  
  15.     ]);  
  16.   
  17.     var ds = new Ext.data.GroupingStore({  
  18.         proxy: new Ext.data.HttpProxy({ url: 'GetJson.aspx',method: 'post' }),  
  19.         reader: new Ext.data.JsonReader({  
  20.             root: 'data',  
  21.             totalProperty: 'totalRecordCount'  
  22.         }, [  
  23.             { name: 'user_code', mapping: 'user_code', type: 'string' },  
  24.             { name: 'meter_num', mapping: 'meter_num', type: 'string' },  
  25.             { name: 'pur_power', mapping: 'pur_power', type: 'int' },  
  26.             { name: 'pur_date', mapping: 'pur_date', type: 'string' }  
  27.   
  28.         ])  
  29.     });  
  30.   
  31.     var record_start = 0;   
  32.     var grid = new Ext.grid.GridPanel({  
  33.         el: 'grid3',  
  34.         ds: ds,  
  35.        // sm: sm,   
  36.         cm: cm,  
  37.         width: 700,  
  38.         height: 280,  
  39.         loadMask:{msg:'系统正在查询,请稍候......'},  
  40.         bbar: new Ext.PagingToolbar({  
  41.             pageSize: 10,  
  42.               
  43.             store: ds,  
  44.             displayInfo: true,  
  45.             displayMsg: '显示第 {0} 条到 {1} 条记录,一共 {2} 条',  
  46.             emptyMsg: "没有记录",  
  47.             doLoad : function(start)  
  48.             {  
  49.                record_start  = start;   
  50.                var o = {}, pn = this.paramNames;   
  51.                o[pn.start] = start;   
  52.                o[pn.limit] = this.pageSize;    
  53.                this.store.load({params:o});    
  54.             }  
  55.         })  
  56.     });  
  57.     //el:指定html元素用于显示grid   
  58.       
  59.    ds.load({ params: { start: 0, limit: 10} });  
  60.     grid.render(); //渲染表格   
  61.        
  62.       
  63. });  
/**
 * @author fox
 */
Ext.onReady(function() {
    Ext.BLANK_IMAGE_URL = 'extjs/resources/images/default/s.gif';
    Ext.QuickTips.init();
    //var sm = new Ext.grid.CheckboxSelectionModel();
    var cm = new Ext.grid.ColumnModel([
        new Ext.grid.RowNumberer(),
        //sm,
        { header: '用户编号', dataIndex: 'user_code', sortable: true },
        { header: '电表编号', dataIndex: 'meter_num' },
        { header: '购电量', dataIndex: 'pur_power' },
        { header: '购电时间', dataIndex: 'pur_date' }
    ]);

    var ds = new Ext.data.GroupingStore({
        proxy: new Ext.data.HttpProxy({ url: 'GetJson.aspx',method: 'post' }),
        reader: new Ext.data.JsonReader({
            root: 'data',
            totalProperty: 'totalRecordCount'
        }, [
            { name: 'user_code', mapping: 'user_code', type: 'string' },
            { name: 'meter_num', mapping: 'meter_num', type: 'string' },
            { name: 'pur_power', mapping: 'pur_power', type: 'int' },
            { name: 'pur_date', mapping: 'pur_date', type: 'string' }

        ])
    });

    var record_start = 0; 
    var grid = new Ext.grid.GridPanel({
        el: 'grid3',
        ds: ds,
       // sm: sm,
        cm: cm,
        width: 700,
        height: 280,
        loadMask:{msg:'系统正在查询,请稍候......'},
        bbar: new Ext.PagingToolbar({
            pageSize: 10,
            
            store: ds,
            displayInfo: true,
            displayMsg: '显示第 {0} 条到 {1} 条记录,一共 {2} 条',
            emptyMsg: "没有记录",
            doLoad : function(start)
            {
               record_start  = start; 
               var o = {}, pn = this.paramNames; 
               o[pn.start] = start; 
               o[pn.limit] = this.pageSize;  
               this.store.load({params:o});  
            }
        })
    });
    //el:指定html元素用于显示grid
    
   ds.load({ params: { start: 0, limit: 10} });
    grid.render(); //渲染表格
     
    
});


  1. <%@ Page Language="C#" AutoEventWireup="true" CodeFile="GetJson.aspx.cs" Inherits="GetJson" %>  
  2. <%=strJsonSource %>  
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="GetJson.aspx.cs" Inherits="GetJson" %>
<%=strJsonSource %>

  1. public partial class GetJson : System.Web.UI.Page  
  2. {  
  3.     protected string strJsonSource = string.Empty;  
  4.     protected void Page_Load(object sender, EventArgs e)  
  5.     {  
  6.         int start = int.Parse(Request.Form["start"].Trim()); //获取页面显示的起始数   
  7.         int limit = int.Parse(Request.Form["limit"].Trim()); //获取每页记录数   
  8.           
  9.         SqlConnection conn = new SqlConnection();  
  10.         conn.ConnectionString = "server=(local);database=cpudata;user id =sa;password= 19790601";  
  11.         try  
  12.         {  
  13.             conn.Open();  
  14.             SqlCommand cmd = new SqlCommand();  
  15.             cmd.Connection = conn;  
  16.             cmd.CommandText = "select top 100 user_code,meter_num,pur_power,pur_date from pur_power_detail";  
  17.             SqlDataAdapter sda = new SqlDataAdapter(cmd);  
  18.             DataSet ds = new DataSet();  
  19.             sda.Fill(ds);  
  20.             int pageCount = ds.Tables[0].Rows.Count;  
  21.             DataTable dt = ds.Tables[0];  
  22.             strJsonSource = DataTableToJson(dt, "data", start, limit);  
  23.   
  24.               
  25.   
  26.               
  27.    
  28.   
  29.   
  30.         }  
  31.         catch (Exception ex)  
  32.         {  
  33.   
  34.             Response.Write(ex.Message);  
  35.         }  
  36.         finally  
  37.         {  
  38.             conn.Close();  
  39.         }  
  40.   
  41.         HttpContext.Current.Response.Write(strJsonSource);  
  42.         HttpContext.Current.Response.End();  
  43.           
  44.   
  45.   
  46.   
  47.   
  48.   
  49.   
  50.   
  51.   
  52.         //strJsonSource = ReturnJson.JsonString();   
  53.         //HttpContext.Current.Response.Write(strJsonSource);   
  54.         //HttpContext.Current.Response.End();   
  55.     }  
  56.     public static string DataTableToJson(DataTable dt, string strTableName, int start, int limit)  
  57.     {  
  58.         StringBuilder jsonBuilder = new StringBuilder();  
  59.         string head = "{ success:true,\"totalRecordCount\":\"" + dt.Rows.Count.ToString() + "\",\"";  
  60.         //jsonBuilder.Append("{\"");   
  61.         string tmpStr = "";  
  62.         jsonBuilder.Append(strTableName);  
  63.         jsonBuilder.Append("\":[");  
  64.         if (dt.Rows.Count > 0)  
  65.         {  
  66.             int endCount = start + limit;  
  67.             if (endCount > dt.Rows.Count)  
  68.                 endCount = dt.Rows.Count;  
  69.             for (int i = start; i < endCount; i++)  
  70.             {  
  71.                 jsonBuilder.Append("{");  
  72.                 for (int j = 0; j < dt.Columns.Count; j++)  
  73.                 {  
  74.                     jsonBuilder.Append("\"");  
  75.                     jsonBuilder.Append(dt.Columns[j].ColumnName);  
  76.                     jsonBuilder.Append("\":\"");  
  77.                     tmpStr = dt.Rows[i][j].ToString().Trim();  
  78.   
  79.                     jsonBuilder.Append(tmpStr.Replace("\"""\\\""));  
  80.                     jsonBuilder.Append("\",");  
  81.                 }  
  82.                 jsonBuilder.Remove(jsonBuilder.Length - 1, 1);  
  83.                 jsonBuilder.Append("},");  
  84.             }  
  85.             jsonBuilder.Remove(jsonBuilder.Length - 1, 1);  
  86.         }  
  87.         jsonBuilder.Append("]");  
  88.         jsonBuilder.Append("}");  
  89.         return head + jsonBuilder.ToString();  
  90.     }  
  91. }  
public partial class GetJson : System.Web.UI.Page
{
    protected string strJsonSource = string.Empty;
    protected void Page_Load(object sender, EventArgs e)
    {
        int start = int.Parse(Request.Form["start"].Trim()); //获取页面显示的起始数
        int limit = int.Parse(Request.Form["limit"].Trim()); //获取每页记录数
        
        SqlConnection conn = new SqlConnection();
        conn.ConnectionString = "server=(local);database=cpudata;user id =sa;password= 19790601";
        try
        {
            conn.Open();
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = conn;
            cmd.CommandText = "select top 100 user_code,meter_num,pur_power,pur_date from pur_power_detail";
            SqlDataAdapter sda = new SqlDataAdapter(cmd);
            DataSet ds = new DataSet();
            sda.Fill(ds);
            int pageCount = ds.Tables[0].Rows.Count;
            DataTable dt = ds.Tables[0];
            strJsonSource = DataTableToJson(dt, "data", start, limit);

            

            
 


        }
        catch (Exception ex)
        {

            Response.Write(ex.Message);
        }
        finally
        {
            conn.Close();
        }

        HttpContext.Current.Response.Write(strJsonSource);
        HttpContext.Current.Response.End();
        








        //strJsonSource = ReturnJson.JsonString();
        //HttpContext.Current.Response.Write(strJsonSource);
        //HttpContext.Current.Response.End();
    }
    public static string DataTableToJson(DataTable dt, string strTableName, int start, int limit)
    {
        StringBuilder jsonBuilder = new StringBuilder();
        string head = "{ success:true,\"totalRecordCount\":\"" + dt.Rows.Count.ToString() + "\",\"";
        //jsonBuilder.Append("{\"");
        string tmpStr = "";
        jsonBuilder.Append(strTableName);
        jsonBuilder.Append("\":[");
        if (dt.Rows.Count > 0)
        {
            int endCount = start + limit;
            if (endCount > dt.Rows.Count)
                endCount = dt.Rows.Count;
            for (int i = start; i < endCount; i++)
            {
                jsonBuilder.Append("{");
                for (int j = 0; j < dt.Columns.Count; j++)
                {
                    jsonBuilder.Append("\"");
                    jsonBuilder.Append(dt.Columns[j].ColumnName);
                    jsonBuilder.Append("\":\"");
                    tmpStr = dt.Rows[i][j].ToString().Trim();

                    jsonBuilder.Append(tmpStr.Replace("\"", "\\\""));
                    jsonBuilder.Append("\",");
                }
                jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
                jsonBuilder.Append("},");
            }
            jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
        }
        jsonBuilder.Append("]");
        jsonBuilder.Append("}");
        return head + jsonBuilder.ToString();
    }
}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值