JEECG 3.4.3 online开发中没有combotree控件,可用以下方法:
1、online 创建表单,控件使用text或select都可以,显示的长度有区别
2、使用firebug找到实际控件的id
3、在表单上使用JS增强,代码示例:
$('#province_terr_id').combotree({
url : 'territoryController.do?getTerritoryTree',
panelHeight:100,
onClick: function(node){
$("#province_terr_id").val(node.territoryname);
}
});
4、在controller编写getTerritoryTree函数,返回comboTree
@RequestMapping(params = "getTerritoryTree")
@ResponseBody
public List<ComboTree> getTerritoryTree(HttpServletRequest request, ComboTree comboTree) {
CriteriaQuery cq = new CriteriaQuery(TSTerritory.class);
/* if (comboTree.getId() != null) {
cq.eq("TSTerritory.id", comboTree.getId());
}
if (comboTree.getId() == null) {
cq.isNull("TSTerritory");
}*/
// cq.add();
List<TSTerritory> territoryList = systemService.getListByCriteriaQuery(cq, false);
List<ComboTree> comboTrees = new ArrayList<ComboTree>();
ComboTreeModel comboTreeModel = new ComboTreeModel("id", "territoryName", "TSTerritorys");
comboTrees = systemService.ComboTree(territoryList, comboTreeModel, null);
return comboTrees;
}
5、大功告成!