• FlexGrid简单demo


    1.首先加入以下代码

    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <link rel="stylesheet" type="text/css" href="flexigrid-1.1/css/flexigrid.pack.css" />
         <script type="text/javascript" src="flexigrid-1.1/js/JQuery.1.5.2.min.js"></script>
        <script type="text/javascript" src="/flexgrid/flexigrid-1.1/js/flexigrid.js"></script>
        <title></title>
    
        <script>
            $().ready(function () {
                $("#flex1").flexigrid({
                    url: '/flexgrid/json.ashx',
                    dataType: 'json',
                    colModel: [
    
        { display: '任务编号', name: 'Unid', sortable: true,  40, align: 'center' },
    
        { display: '第一列', name: 'CustomerName',  180, align: 'left' },
    
        { display: '第二列', name: 'Memo',  120, align: 'left' },
         { display: '第二列', name: 'Memo',  120, align: 'left' },
                    ],
                    sortname: "Unid",
                    sortorder: "asc",
                    usepager: true,
                    title: 'One Demo',
                    useRp: true,
                    rp: 10,
                     'auto',
                    height: 255,
                    query:"a=1&b=2"
                })
            });
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
             <table id="flex1" style="">
            </table>
        </div>
        </form>
    </body>
    </html>
    View Code

    2.json.ashx代码如下

    <%@ WebHandler Language="C#" Class="json" %>
    
    using System;
    using System.Web;
    using System.Linq;
    using System.Collections.Generic;
    using System.Web.Script.Serialization;
    using System.Reflection;
    public class json : IHttpHandler {
    
        public int pagesize = int.Parse(HttpContext.Current.Request["rp"]); //页显示数量
        public int  pageindex= int.Parse(HttpContext.Current.Request["page"]); //页码
        public void ProcessRequest (HttpContext context)
        {
           Bind2(context);
           
        }
    
        //OK
        public void Bind1 (HttpContext context)
        
        {
            context.Response.ContentType = "text/plain";
    
            DB_CSM_20150615Entities db = new DB_CSM_20150615Entities();
            var list = db.T_TASK.Where(u => u.TASK_ID != null);
            int recordCount = 0;
            recordCount = list.Count();
            list = list.OrderBy(u => u.TASK_ID);
            list = list.Skip(pageindex * pagesize).Take(pagesize);
    
            FlexigridObject fo = new FlexigridObject();
            fo.page = pageindex;
            fo.total = recordCount;
            foreach (var v in list)
            //for (int i = (pageindex - 1) * pagesize + 1; i <= pageindex *pagesize; i++)
            {
                FlexigridRow fr = new FlexigridRow() { id = v.TASK_ID.ToString(), cell = new List<string>() { v.TASK_ID.ToString(), "bbcc" + v.TASK_CODE, "cc" + v.TASK_LEVEL_ID } };
                fo.rows.Add(fr);
            }
    
    
            JavaScriptSerializer js = new JavaScriptSerializer();
            string outStr = js.Serialize(fo);
            context.Response.Write(outStr);
        }
        /// <summary>
        /// 利用反射 获取类里属性
        /// </summary>
        /// <param name="context"></param>
        public void Bind2(HttpContext context)
        {
    
            context.Response.ContentType = "text/plain";
    
            DB_CSM_20150615Entities db = new DB_CSM_20150615Entities();
            var list = db.T_TASK.Where(u => u.TASK_ID != null);
            int recordCount = 0;
            recordCount = list.Count();
            list = list.OrderBy(u => u.TASK_ID);
            list = list.Skip(pageindex * pagesize).Take(pagesize);
    
            FlexigridObject fo = new FlexigridObject();
            fo.page = pageindex;
            fo.total = recordCount;
            foreach (var v in list)
            //for (int i = (pageindex - 1) * pagesize + 1; i <= pageindex *pagesize; i++)
            {
                List< string> lt = new List<string>();
              
                foreach (var p in v.GetType().GetProperties())
                {
                    object temp=p.GetValue(v);
                    if (temp != null)
                    {
                        lt.Add(temp.ToString());
                    }
                  
                }
            
                FlexigridRow fr = new FlexigridRow() { id = v.TASK_ID.ToString(), cell =lt };
                fo.rows.Add(fr);
            }
    
    
            JavaScriptSerializer js = new JavaScriptSerializer();
            string outStr = js.Serialize(fo);
           context.Response.Write(outStr);
        }
    
     
        public bool IsReusable {
            get {
                return false;
            }
        }
    
    
    
        public class FlexigridObject
        {
            public int page;
            public int total;
            public List<FlexigridRow> rows = new List<FlexigridRow>();
        }
    
        public class FlexigridRow
        {
            public string id;
            public List<string> cell = new List<string>();
        }
    }
    View Code

    demo 下载

    flexgrid参数说明

    height: 200, //flexigrid插件的高度,单位为px
    
     ‘auto’, //宽度值,auto表示根据每列的宽度自动计算
    
    striped: true, //是否显示斑纹效果,默认是奇偶交互的形式
    
    novstripe: false,
    
    min 30, //列的最小宽度
    
    minheight: 80, //列的最小高度
    
    resizable: true, //是否可伸缩
    
    url: false, //ajax方式对应的url地址
    
    method: ‘POST’, // 数据发送方式
    
    dataType: ‘xml’, // 数据加载的类型
    
    errormsg: ‘Connection Error’,//错误提升信息
    
    usepager: false, //是否分页
    
    nowrap: true, //是否不换行
    
    page: 1, //默认当前页
    
    total: 1, //数据的总行数
    
    useRp: true, //是否可以动态设置每页显示的结果数
    
    rp: 15, // 每页显示的行数
    rpOptions: [10,15,20,25,40],//可选择设定的每页结果数
    
    title: false,//是否包含标题
    
    pagestat: ‘Displaying {from} to {to} of {total} items’,//显示当前页和总页面的样式
    
    procmsg: ‘Processing, please wait …’,//正在处理的提示信息
    
    query: ”,//搜索查询的条件
    
    qtype: ”,//搜索查询的类别
    
    nomsg: ‘No items’,//无结果的提示信息
    
    minColToggle: 1, //minimum allowed column to be hidden
    
    showToggleBtn: true, //show or hide column toggle popup
    
    hideOnSubmit: true,//隐藏提交
    
    autoload: true,//自动加载
    
    blockOpacity: 0.5,//透明度设置
    
    onToggleCol: false,//当在行之间转换时
    
    onChangeSort: false,//当改变排序时
    
    onSuccess: false,//成功后执行
    
    onSubmit: false // 调用自定义的计算函数
  • 相关阅读:
    Spring Cloud Data Flow整合UAA之使用LDAP进行账号管理
    2020,分手快乐;2021,且行且歌
    Spring Cloud Data Flow整合UAA使用外置数据库和API接口
    Spring Cloud Data Flow整合Cloudfoundry UAA服务做权限控制
    Spring自定义转换类,让@Value更方便
    2020年11月CKA新题考试心得体会
    使用Go module和GoLand初始化一个Go项目
    Spring Cloud Gateway简单入门,强大的微服务网关
    vue百度地图实现自定义覆盖物
    vue 中安装使用jquery
  • 原文地址:https://www.cnblogs.com/tiancai/p/4788899.html
Copyright © 2020-2023  润新知