• jqGrid笔记@简单实现


    jqGrid在MVC中的版本是已经通过 HtmlHelper 的扩展方法封装后的产物,webForm版本貌似也将其封装成了服务器端空间,所以我推荐下载原生的jqGrid版本的地址为:http://www.trirand.com/blog/?page_id=6

    推荐的Demo学习网址为:http://trirand.com/blog/jqgrid/jqgrid.html

    Documentation:http://www.trirand.com/jqgridwiki/doku.php?id=wiki:jqgriddocs

    jqGrid中的一些概念:

    griddesc[1]

     

     我们调用jqGrid的时候用的语法是:

    jQuery("#grid_id").jqGrid(options);

    这里的option是一系列的键值对,可以是方法、属性值、事件,其中有些是可选的,有些事必须的,你可以将我下面的demo中的options作为参考。

    第一个jqGrid Demo                                                                                                    

    接收json数据时候的前台代码:   
    如果要前台要接受xml数据,前台代码请看:http://www.trirand.com/jqgridwiki/doku.php?id=wiki:conventions

    <head runat="server"
        <meta name="viewport" content="width=device-width" />

        <script src="../../Scripts/jquery-1.7.2.min.js"></script> 
        <script src="../../Scripts/jquery-ui-1.8.21.custom.min.js"></script> 
        <script src="../../Scripts/grid.locale-en.js"></script> 
        <script src="../../Scripts/jquery.jqGrid.min.js"></script>

    <script type="text/javascript"
        $(function () { 
            jQuery("#list2").jqGrid({ 
                url: '/Home/ReturnJson'
                datatype: "json"
                colNames: ['Name''PhoneNo''EmailAddress'], 
                colModel: [ 
                    { name: 'Name', index: 'Name',  55 }, 
                    { name: 'PhoneNo', index: 'PhoneNo',  90 }, 
                    { name: 'EmailAddress', index: 'EmailAddress',  100 }, 
                ], 
                sortname: 'Name'
                autoWidth:false
                rowNum: 10
                rowList: [102030], 
                pager: '#pager2'
                sortname: 'id'
                viewrecords: true
                autoencode: true
                sortorder: "desc"
                caption: "JSON Example"
                jsonReader: { 
                    repeatitems: false 
                }, 
            }); 
            jQuery("#list2").jqGrid('navGrid''#pager2', { edit: false, add: false, del: false });

        }) 
    </script> 
        <title>Index</title> 
    </head> 
    <body> 
        <div> 
                    <table id="list2"></table> 
            <div id="pager2"></div> 
        </div> 
    </body> 
    </html>

     

     
    返回json数据的后台代码后台代码:
    MVC中返回xml数据时候需要扩展,扩展的方式请看:http://www.cnblogs.com/xfrog/archive/2011/01/06/1929212.html
    public ActionResult Second() 

        return View(); 
    }

    public JsonResult ReturnJson(int page,int rows,string search,string sidx,string sord) 

        TestModel[] data = new TestModel[] { 
            new TestModel{id=1,Name="张三", PhoneNo="123", EmailAddress="zhangsan@gmail.com"}, 
            new TestModel{id=2,Name="李四", PhoneNo="456", EmailAddress="lisi@gmail.com"}, 
            new TestModel{id=3,Name="王五", PhoneNo="789", EmailAddress="wangwu@gmail.com"}, 
        }; 
        int currentPage = Convert.ToInt32(page)-1
        int totalRecords = data.Length; 
        var totalPages = (int)Math.Ceiling(totalRecords/(float)rows);

        var jsonData = new 
        { 
            page=page, 
            total=totalPages, 
            records=totalRecords, 
            rows = data 
        };

        return Json(jsonData,JsonRequestBehavior.AllowGet); 

    但我们能够成功的run起来我们的demo以后,如果要实现一些特殊的功能,我们可以从demo中进行学习,在文章额考试我们给出了demo的地址。

     

      

  • 相关阅读:
    [USACO13NOV] Pogo-Cow
    《高性能Mysql》讲聚簇索引
    复合索引底层实现
    数据库索引实现(B+,B-,hash)
    B+树,B树,聚集索引,非聚集索引
    MySQL存储引擎
    synchronized实现原理
    【1】线程池的使用
    CompletionService
    原型模式
  • 原文地址:https://www.cnblogs.com/key1309/p/3573976.html
Copyright © 2020-2023  润新知