jqGrid事件没有解雇

时间:2010-11-23 20:08:59

标签: jquery jqgrid

我已经在mvc项目中安装了jquery网格,并将其连接到jquery ui。初始加载很好,看到控制器中的操作调用,结果显示为预期。如果我点击任何标题进行排序 - 没有任何反应,操作不会在控制器中调用。我在萤火虫中没有任何错误 - 只是没有事件。

我错过了什么吗?

public ActionResult GetRateTypes(string sidx, string sord, int page, int rows)
        {
            int totalPages = 1; // we'll implement later
            int pageSize = rows;
            int totalRecords = 3; // implement later

            var jsonData = new
            {
                total = totalPages,
                page = page,
                records = totalRecords,
                rows = new[]{
                    new {id = 1, cell = new[] {"1", "-7", "Is this a good question?"}},
                    new {id = 2, cell = new[] {"2", "15", "Is this a blatant ripoff?"}},
                    new {id = 3, cell = new[] {"3", "23", "Why is the sky blue?"}}
                }
            };
            return Json(jsonData, JsonRequestBehavior.AllowGet);
        }


<script type="text/javascript">
        jQuery(document).ready(function() {
            jQuery("#list").jqGrid({
            url: '/Configuration/GetRateTypes',
                datatype: 'json',
                mtype: 'GET',
                colNames: ['Code', 'Name', 'Rate'],
                colModel: [
          { name: 'Code', index: 'Code', width: 40, align: 'left' },
          { name: 'Name', index: 'Name', width: 40, align: 'left' },
          { name: 'Rate', index: 'Rate', width: 400, align: 'left'}],
                pager: jQuery('#pager'),
                rowNum: 1,
                rowList: [5, 10, 20, 50],
                sortname: 'Code',
                sortorder: "desc",
                viewrecords: true,
                imgpath: '/css/blitzer/',
                caption: 'Interest Rate Types'
            });
        }); 
    </script>

2 个答案:

答案 0 :(得分:0)

可能它没有排序,因为jqGrid不知道如何排序。尝试为colModel属性中的每个列应用'sorttype'属性。 仔细阅读documentation

答案 1 :(得分:0)

如果您使用datatype: 'json',则服务器负责数据排序和分页。您当前的服务器代码(GetRateTypes)不这样做。例如,查看this旧答案,其中显示了如何实现排序和分页。