SpingMVC、easyui 使用onBeforeExpand()方法异步加载树时,后台接收不到id。
这是前台的代码:已经成功出现树。
onBeforeExpand()方法中的url后已经拼上了id。id是有值的。
$(function() {
$("#department")
.tree(
{
url : "/department",
animate : true,
method : "GET",
loadFilter : function(data, parent) {
var arr = [];
var list = data.list;
for ( var i = 0; i < list.length; i++) {
var doc = list[i];
var item = {
id : doc.id,
text : doc.name,
state : 'closed',
employees : doc.employees
};
arr.push(item);
}
return arr;
},
onBeforeExpand : function(node) {
alert(node.id);
$('#department').tree('options').url = "/department?id="+ node.id;
},
onContextMenu : function() {
e.preventDefault();//阻止默认的事件,浏览器的右键菜单
$(this).tree('select', node.target);
$('#departmentMenu').menu('show', {
left : e.pageX, //显示的位置
top : e.pageY
});
}
});
});
后台的代码:
点击树节点时,因为接收不到id,因此id值为0,于是又把所有的节点加载到了子节点下。
@RequestMapping(method = RequestMethod.GET)
public Object queryListByParentId(@RequestParam(value = "id") String id,HttpServletRequest request) {
// 返回的消息体
Map<String, Object> map = new HashMap<String, Object>();
//String id = request.getParameter("id"); // 部门ID
List<Department> list = departmentService.findByPId(id);
if (null == list || list.isEmpty()) {
return toResponseEntity(404, map);
}
map.put("list", list);
return toResponseEntity(200, map);
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论