MVC ajax前台分页终于成功记录一下

学.net MVC jquery easyui ajax 前台分页终于解决,后台返回JSON字符串,找不少资料都是前台模拟数据 ,加上对javascript不熟 ,折腾了几天!

 

@{
    Layout = null;
}

<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <link href="~/Scripts/jqq/themes/icon.css" rel="stylesheet" />
        <link href="~/Scripts/jqq/themes/default/easyui.css" rel="stylesheet" />
    <link href="../../Scripts/jqq/demo/demo.css" rel="stylesheet" />
   <script type="text/javascript" src="~/Scripts/jqq/jquery.min.js"></script>
     <script type="text/javascript" src="~/Scripts/jqq/locale/easyui-lang-zh_CN.js"></script>
        <script type="text/javascript" src="~/Scripts/jqq/jquery.easyui.min.js"></script>
    <title>fy</title>
<script type="text/javascript">

    $(function () {
        document.getElementById('wintest').style.display = 'none';
        $("#idkc").textbox({
            editable: false,
            readonly: true
        }
               );
        $('#dgtest').datagrid({ loadFilter: pagerFilter }).datagrid('loadData', getData());
  
       
            function getData() {
                var rows;
                $.ajax({
                    url: 'Home/js',
                    async: false,
                    datatype: 'JSON',
                    pagination: true,
                    success: function (data) {  
                      rows = eval("(" + data + ")");
                        
                    }
                   
                     
                });
                return rows;
               
            }
            function pagerFilter(data){
                if (typeof data.length == 'number' && typeof data.splice == 'function'){    // 判断数据是否是数组
                    data = {
                        total: data.length,
                        rows: data
                    }
                }
                var dg = $(this);
                var opts = dg.datagrid('options');
                var pager = dg.datagrid('getPager');
                pager.pagination({
                    onSelectPage:function(pageNum, pageSize){
                        opts.pageNumber = pageNum;
                        opts.pageSize = pageSize;
                        pager.pagination('refresh',{
                            pageNumber:pageNum,
                            pageSize:pageSize
                        });
                        dg.datagrid('loadData',data);
                    }
                });
                if (!data.originalRows){
                    data.originalRows = (data.rows);
                }
                var start = (opts.pageNumber-1)*parseInt(opts.pageSize);
                var end = start + parseInt(opts.pageSize);
                data.rows = (data.originalRows.slice(start, end));
                return data;
            }
 
   
    });
            
</script>
    </head>

<body>
    <div>
        <table id="dgtest" class="easyui-datagrid"  style="width:500px;height:400px"
            data-options="singleSelect:true,collapsible:true,pagination:true'">
        <thead>
            <tr>
                <th data-options="field:'Id',width:80">Id</th>
                <th data-options="field:'name',width:100">name</th>
               
            </tr>
        </thead>
    </table>
       
         
    </div>
    
</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值