【发布时间】:2014-03-17 09:13:48
【问题描述】:
我正在使用 jgGrid 绑定从 Web 服务接收到的 JSON 响应。 我在排序功能方面面临 2 个问题-
1.网格中的数据最初没有使用提供的参数进行排序-
sortname: "BankName",
sortorder: "asc",
2.列上不显示排序图标。点击列标题都不适合我。
收到的 JSON 数据:
[{"Id":1,"BankId":2,"BankName":"State bank","EmployeeId":2539,"EmployeeName":"John C.","JoiningDate":"2005-07-05T00:00:00","SalaryAmount":50000.0,"Comments":""},
{"Id":2,"BankId":2,"BankName":"State bank","EmployeeId":2232,"EmployeeName":"xxx","JoiningDate":"2001-12-23T00:00:00","SalaryAmount":30000.0,"Comments":"test"},
{"Id":3,"BankId":4,"BankName":"National bank","EmployeeId":2322,"EmployeeName":"yyyy","JoiningDate":"2002-09-23T00:00:00","SalaryAmount":90000.0,"Comments":""},
{"Id":4,"BankId":3,"BankName":"Punjab bank","EmployeeId":2432,"EmployeeName":"ppp","JoiningDate":"2003-01-31T00:00:00","SalaryAmount":60000.0,"Comments":" "},
{"Id":5,"BankId":1,"BankName":"Bank of Maharashtra","EmployeeId":2892,"EmployeeName":"zzz y.","JoiningDate":"2000-10-11T00:00:00","SalaryAmount":80000.0,"Comments":"test 2"}
]
jqGrid 声明和绑定:
<script type="text/javascript">
jQuery(document).ready(function () {
jQuery("#employeeSalarysGrid").jqGrid({
height: 250,
url: 'http://localhost:50570/api/Test/GetEmployeeSalaries',
mtype: "GET",
contentType: "application/json; charset=utf-8",
datatype: "json",
serializeGridData: function (postData) {
return JSON.stringify(postData);
},
jsonReader: {
root: function (obj) { return obj; },
page: function (obj) { return 1; },
total: function (obj) { return 1; },
records: function (obj) { return obj.length; },
id: "0",
cell: "",
repeatitems: false
},
datatype: "json",
colNames: ['Id', 'Bank Name', 'Employee name', 'Joining date', 'Salary amount', 'Comments'],
colModel: [
{ name: 'Id', index: 'Id', align: "center", key: true },
{ name: 'BankName', index: 'BankName', align: "center" },
{ name: 'EmployeeName', index: 'EmployeeName', align: "center" },
{ name: 'JoiningDate', index: 'JoiningDate', align: "center" },
{ name: 'SalaryAmount', index: 'SalaryAmount', align: "center" },
{ name: 'Comments ', index: 'Comments', align: "center" }
],
sortname: "BankName",
sortorder: "asc",
viewrecords: true,
rowNum: 10,
rowList: [10, 15, 20],
pager: '#employeeSalarysPager',
caption: "Employee Salary list"
});
});
</script>
另外请注意,这些是我添加到页面的 5 个文件:
<link href="../Content/jquery.jqGrid/ui.jqgrid.css" rel="stylesheet" />
<link href="../Content/jquery.jqGrid/jquery-ui-custom.css" rel="stylesheet" />
<script src="../Scripts/jquery-1.9.1.min.js"></script>
<script src="../Scripts/jquery.jqGrid.js"></script>
<script src="../Scripts/i18n/grid.locale-en.js"></script>
请帮我弄清楚为什么排序不起作用。
在此先感谢您,非常感谢您对此提供的帮助。
问候,
阿比拉什
【问题讨论】:
标签: jquery json sorting jqgrid