private void buildOptions(Category c, StringBuffer sb, String prefix) {
for (int i = 0; i < c.getItems().size(); i++) {
Category ci = (Category) c.getItems().get(i);
sb.append("<option value='" + ci.getId() + "'>" +
prefix + " " + ci.getName() +
"</option>"); if (ci.getItems().size() > 0) {
buildOptions(ci, sb, prefix+" ");
}
}
}我这里的是一个称为类别对象,楼主的是部门,其实是一样的。getItems 方法是获得某个类别的子类别 List,因此,要有使用一个实际上并不存在的根类别对象 root 进行最初的调用:buildOptions(root, sb, "");
out.println(sb.toString());
for (int i = 0; i < c.getItems().size(); i++) {
Category ci = (Category) c.getItems().get(i);
sb.append("<option value='" + ci.getId() + "'>" +
prefix + " " + ci.getName() +
"</option>"); if (ci.getItems().size() > 0) {
buildOptions(ci, sb, prefix+" ");
}
}
}我这里的是一个称为类别对象,楼主的是部门,其实是一样的。getItems 方法是获得某个类别的子类别 List,因此,要有使用一个实际上并不存在的根类别对象 root 进行最初的调用:buildOptions(root, sb, "");
out.println(sb.toString());
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货