1、jsp里加一个标签
也可以不是select。url是后台返回json数据的请求地址,每次展开请求时,都会把要展开节点的“id”传给后台
<select id="orgAreaId" class="easyui-combotree" style="width: 200px;" data-options="url:'../area/queryChildrenArea.do',required:true"></select>
2、后台
很简单,构造返回的json就可以了。初次请求时id是null。【”state”: “closed”】表示该节点不自动展开,也就是说在页面上可以手动自行点击加号展开。( ̄▽ ̄)”这就是异步?
@RequestMapping(value = "/queryChildrenArea.do", method = RequestMethod.POST)
@ResponseBody
public String queryChildrenArea(String id){
if(null==id || "".equals(id)){
id = "-1";
}
StringBuffer sb = new StringBuffer();
sb.append("[");
List<Map<String, Object>> list = areaService.queryChildrenArea(id);
if(null!=list && list.size()>0){
for (int i=0; i<list.size(); i++) {
sb.append("{");
sb.append("\"id\": "+list.get(i).get("AREA_ID")+",");
sb.append("\"text\": \""+list.get(i).get("AREA_NAME")+"\",");
sb.append("\"state\": \"closed\"");
sb.append("}");
if(i != list.size()-1){
sb.append(",");
}
}
}
sb.append("]");
return sb.toString();
}
最终实现很简单,但是找结果的过程却花了不少时间。