先给出返回的json数据。
{
"total": "2",
"rows": [
{
"id": "1",
"name": "张富银",
"xiuhao": "2014009012",
"exttend": {
"sid": "1",
"tid": "1",
"tel": "18580711609",
"qq": "564968550",
"email": "myfirtyou@qq.com",
"sxdw": "重庆源代码教育咨询有限公司",
"sxdw_add": "重庆市永川区",
"jjlxrtel": "15922879092"
}
},
{
"id": "4",
"name": "测试学生姓名",
"xiuhao": "2014009013",
"exttend": {
"sid": "4",
"tid": "1",
"tel": "1234567890",
"qq": "12345",
"email": "test@qq.com",
"sxdw": "实习单位",
"sxdw_add": "单位地址",
"jjlxrtel": "1234567890"
}
}
]
}
昨天遇到这样一个问题,在取exttend里面的信息时,我使用了 如下的方式:
{
field: 'sxdw'
,
title:
'实习单位'
,
width: 60,
formatter:
function
(value, rec) {
return
rec.extend.sxdw;
}
},
这样可以取出sxdw的值,但是账号类型,性别也显示实习单位地址的值。不知道问题出在哪,在网上搜索,看到给出的解决办法都是返回 rec.extend.sxdw;这样,但是只返回一个字段,这样肯定可以返回正确的值了,但是我要返回的是很多个字段。真是没办法了,就随便试 试吧,我把field:’sxdw’改成field:’extend.sxdw,再运行一次,竟然得到了我想要的结果。
下面是完整的代码:
1 $('#student_list').datagrid({
2 fit:true,
3 fitColumns : true,
4 rownumbers : true,
5 border : false,
6 striped : true,
7 url:Thinkphp['MODULE']+'/student/getInfo/',
8 toolbar : '#student_tool',
9 rownumbers:true,//显示行号
10 pagination:true,//显示分页工具条
11 pageList : [15, 30, 45],
12 pageNumber : 1,
13 pageSize : 15,
14 sortName : 'id',
15 sortOrder : 'ASC',
16 columns:[[
17 {
18 field:'id',
19 title:'编号',
20 checkbox:true,
21 width:100,
22 },{
23 field:'name',
24 title:'姓名',
25 sortable:true,
26 width:100,
27 },{
28 field:'xiuhao',
29 title:'学号',
30 sortable:true,
31 width:100,
32 },{
33 field:'exttend.teacher',
34 title:'指导教师',
35 sortable:true,
36 width:100,
37 },
38 {
39 field:'exttend.tel',
40 title:'电话',
41 sortable:true,
42 width:100,
43 formatter: function (value, rec) {
44 return rec.exttend['tel'];
45 }
46 },{
47 field:'exttend.qq',
48 title:'QQ',
49 width:80,
50 formatter: function (value, rec) {
51 return rec.exttend['qq'];
52 }
53 },{
54 field:'exttend.email',
55 title:'电子邮件',
56 width:100,
57 formatter: function (value, row) {
58 return row.exttend.email;
59 }
60 },{
61 field:'exttend.sxdw',
62 title:'实习单位',
63 width:150,
64 formatter: function (value, row) {
65 return row.exttend.sxdw;
66 }
67 }, {
68 field:'exttend.sxdw_add',
69 title:'实习单位地址',
70 width:150,
71 formatter: function (value, row) {
72 return row.exttend.sxdw_add;
73 }
74 },{
75 field:'exttend.jjlxrtel',
76 title:'紧急联系人电话',
77 width:100,
78 formatter: function (value, row) {
79 return row.exttend.jjlxrtel;
80 }
81 },
82 ]]
83 });