一、页面修改
1.为datagrid每一行的双击事件绑定响应函数,在$("#grid").datagrid({})的json参数中执行
// 收派标准数据表格
$(‘#grid‘).datagrid( {
iconCls : ‘icon-forward‘,
fit : true,
border : true,
rownumbers : true,
striped : true,
pageList: [30,50,100],
pagination : true,
toolbar : toolbar,
url : "decidedzoneAction_pageQuery.action",
idField : ‘id‘,
columns : columns,
onDblClickRow : doDblClickRow
});
2.在双击的响应事件中构造数据表格,其样式已经写好,只需更改其url地址
function doDblClickRow(index, data){
//alert("双击表格数据...");
$(‘#association_subarea‘).datagrid( {
fit : true,
border : true,
rownumbers : true,
striped : true,
url : "subareaAction_listByDecidedzoneId.action?decidedzoneId="+data.id,
columns : [ [{
field : ‘id‘,
title : ‘分拣编号‘,
width : 120,
align : ‘center‘
},{
field : ‘province‘,
title : ‘省‘,
width : 120,
align : ‘center‘,
formatter : function(data,row ,index){
return row.region.province;
}
}, {
field : ‘city‘,
title : ‘市‘,
width : 120,
align : ‘center‘,
formatter : function(data,row ,index){
return row.region.city;
}
}, {
field : ‘district‘,
title : ‘区‘,
width : 120,
align : ‘center‘,
formatter : function(data,row ,index){
return row.region.district;
}
}, {
field : ‘addresskey‘,
title : ‘关键字‘,
width : 120,
align : ‘center‘
}, {
field : ‘startnum‘,
title : ‘起始号‘,
width : 100,
align : ‘center‘
}, {
field : ‘endnum‘,
title : ‘终止号‘,
width : 100,
align : ‘center‘
} , {
field : ‘single‘,
title : ‘单双号‘,
width : 100,
align : ‘center‘
} , {
field : ‘position‘,
title : ‘位置‘,
width : 200,
align : ‘center‘
} ] ]
});
$(‘#association_customer‘).datagrid( {
fit : true,
border : true,
rownumbers : true,
striped : true,
url : "json/association_customer.json",
columns : [[{
field : ‘id‘,
title : ‘客户编号‘,
width : 120,
align : ‘center‘
},{
field : ‘name‘,
title : ‘客户名称‘,
width : 120,
align : ‘center‘
}, {
field : ‘station‘,
title : ‘所属单位‘,
width : 120,
align : ‘center‘
}]]
});
}
二、服务端实现
1.编写SubareaAction.listByDecidedzoneId,实现根据定区ID查询关联的分区
/**
* 根据定区ID查询相关的分区
* @return
*/
public String listByDecidedzoneId(){
List<Subarea> subareaList = subareaService.listByDecidedzoneId(decidedzoneId);
list2JsonAndWriteResponse(subareaList, "decidedzone", "subareas");
return NONE;
}
2.编写SubareaService.listByDecidedzoneId,利用离线查询对象进行查询
@Override
public List<Subarea> listByDecidedzoneId(String decidedzoneId) {
DetachedCriteria dc = DetachedCriteria.forClass(Subarea.class);
//添加过滤条件
dc.add(Restrictions.eq("decidedzone.id", decidedzoneId));
return subareaDao.findByCriteria(dc);
}