如果生成的树只有一层,那么action可以做如下修改: /** * 生成用户已管理的栏目树 * @return */ public String getMyManageType(){ List<JSONTreeNode> treeNodeArray = new ArrayList<JSONTreeNode>(); String SQLString = "SELECT TYPECODE,TYPENAME FROM DX_FM_TYPE WHERE TYPECODE IN (SELECT DISTINCT TYPECODE FROM DX_FM_ATP_MAP WHERE MANAGERID =?) ORDER BY TYPECODE"; String[] params1 = new String[] {userId}; List jsonList = new ArrayList(); List list1 = dao.QueryByParamSql(SQLString, 0, 0, params1); if(null!=list1&&0!=list1.size()){ for(int i=0;i<list1.size();i++){ Object[] obj = (Object[]) list1.get(i); String typecode = obj[0].toString(); String typename = obj[1].toString(); JSONTreeNode treeNode = new JSONTreeNode(); treeNode.setId(typecode); treeNode.setText(typename); treeNode.setCls("x-html-editor-tip"); treeNode.setLeaf(true); //注意这里要设置为叶子结点 treeNode.setExpanded(false); treeNodeArray.add(treeNode); } } JSONArray JsonArray = JSONArray.fromObject(treeNodeArray); // 得到JSON数组 JsonString = JsonArray.toString();//返回JSON数据 return "success";// 返回JSON数据 }