0 0

树形菜单怎么初始化加载的时候全部展开10

下面的这个方法是页面刚刚加载的时候,调用的函数
function resetTree(grade, subject, parId) {
$("#pointTree")
.tree(
{
width : 500,
url : "/action/exampoint/tree/initPoint?grade=" + grade
+ "&subject=" + subject + "&parId=" + parId,
onBeforeExpand : function(node) {
$("#pointTree").tree("options").url = "/action/exampoint/tree/initPoint?grade="
+ grade
+ "&subject="
+ subject
+ "&parId="
+ node.id;
},

onLoadSuccess : function(node, data) {
if(grade==-1&&subject==-1&&parId==-1)
return;
if (data == null || data == "")
$.messager
.alert("系统提示", "暂无匹配考点训练!", "warning");
}
});
}


后台action对应的方法:
public String initPoint() {
List<Map<String, Object>> root = new ArrayList<Map<String, Object>>();

List<EduExampoint> points = knowledgeManage
.findBySubjectAndGradeAndParId(subject, grade, parId);

for (int i = 0; i < points.size(); i++) {
System.out.println("point==========="+points.get(i));
System.out.println(points.size());
}
for (EduExampoint point : points) {
Map<String, Object> item = new HashMap<String, Object>();
item.put("id", point.getId());
// root
if (point.getParId() == 0)
item.put("text",  point.getEduGrade() + " "
+ point.getEduSubject().getName());
else
item.put("text", point.getName());

   /* int childCount=knowledgeManage.getExamPointChildCount(point.getId());
if (childCount > 0)
item.put("state", "closed");
root.add(item);*/
String countHql = "select count(p.id) from EduExampoint p where p.deleteFlag='true'";
countHql += " and p.parId=" + point.getId();
countHql += grade != null && grade != -1 ? " and p.eduGrade.id="
+ grade
: "";
countHql += subject != null && subject != -1 ? " and p.eduSubject.id="
+ subject
: "";
System.out.println("countHql====="+countHql);
List<Object> rs = knowledgeManage.findByHql(countHql);
int c = 0;
if (!rs.isEmpty()) {
c = Integer.parseInt(rs.get(0).toString());
}
item.put("state", c < 1 ? "open" : "closed");
root.add(item);


}
for (int i = 0; i < root.size(); i++) {
System.out.println("root.get(i)====="+root.get(i));
}
try {
response.getWriter().print(JSONArray.fromObject(root));
} catch (IOException e) {
e.printStackTrace();
}
return null;
}

目前就是初始化加载的时候显示的是图片1的效果,但是现在用户要实现的是页面加载的时候,全部显示树形菜单的所有的结构.就是页面加载的时候要显示的是图片2的效果,有什么好的办法啊,求大神们解决!
2012年8月08日 10:41
  • 大小: 11.4 KB
  • 大小: 45 KB

2个答案 按时间排序 按投票排序

0 0

可以采用ztree开源框架,参考网址:
http://blog.csdn.net/cuiran/article/details/7659094

2012年8月08日 16:10
0 0

在tree 中有一个 expended属性,设为true就可以了

2012年8月08日 10:47

相关推荐

    ajax树形菜单 动态显示

    在这个“ajax树形菜单 动态显示”的项目中,我们关注的是如何利用Ajax技术来实现一个交互式的、只在需要时加载内容的树形菜单。 树形菜单是一种常见的用户界面元素,它通过层级结构来展示信息,常用于网站导航、...

    树形菜单 三种使用的树形菜单

    树形菜单的初始加载只包含顶层节点,用户展开节点时,通过AJAX请求获取子节点数据,这样可以显著提高页面加载速度。`ztree`支持异步加载,只需配置相应的数据接口,即可实现动态加载效果。 在`ztree`中,主要涉及...

    jQuery无限级ajax加载树形菜单代码

    "js"可能包含的是具体的JavaScript代码,包括初始化树形菜单、处理Ajax请求以及解析和渲染JSON数据的逻辑。通常,这个JavaScript文件会定义一些函数来处理树形菜单的交互,如点击事件,以及与服务器进行Ajax通信的...

    JSTree(js写的树形菜单,支持加载10000节点以上)

    JSTree作为一个强大且灵活的JavaScript树形菜单组件,为开发者提供了解决大数据量加载问题的有效工具。其高效、易用和可扩展的特性,使其在各种Web应用中广泛应用,无论是企业级后台管理界面,还是用户友好的前端...

    javascript 树形菜单

    首先,`Thd.css`很可能是样式表文件,用于定义树形菜单的样式,如字体、颜色、布局和展开/折叠动画效果。在CSS中,我们通常会为不同的菜单级别设置不同的缩进,使用伪类来处理展开和折叠状态的样式,例如`::before`...

    树形菜单显示集锦

    树形菜单,顾名思义,是模仿自然界树木分支结构的一种数据可视化形式。每个菜单项可以视为一个节点,包含父节点和子节点。根节点位于顶部,没有父节点,而叶子节点没有子节点。通过这种方式,树形菜单能够有效地组织...

    JS树形菜单集合(最全)

    - 对于大型数据集,树形菜单常采用懒加载策略,只在需要时请求和渲染子节点。这可以通过AJAX或Fetch API实现,减少初始加载时间,提高用户体验。 6. **事件处理** - 事件处理是树形菜单交互的核心,如`...

    纯JavaScript 树形菜单

    2. **JavaScript初始化**:创建一个函数来处理树形菜单的初始化。这个函数应该遍历所有的菜单项,为有子菜单的项添加事件监听器。 3. **事件处理**:为每个可能含有子菜单的节点添加点击事件监听器。当用户点击时,...

    js 树形菜单

    - 初始化树形菜单,通过`treeView = new dhtmlXTreeView({});`创建实例,然后调用`treeView.attachTree(data)`加载数据。 - 添加节点,使用`treeView.addItem(parentId, text, icon, opened)`。 - 删除节点,使用`...

    vue+elementui实现多层树形菜单

    Element UI的树形菜单提供了多种配置选项,包括展开方式、节点图标、是否显示检查框等。你还可以通过CSS覆盖默认样式,定制自己的菜单外观。 ### 7. 总结 Vue.js与Element UI结合使用,可以方便地构建出功能丰富的...

    一个js树形菜单

    在这个树形菜单中,JavaScript会动态地添加、隐藏或展开/折叠菜单项。 - **事件处理**:JavaScript的事件监听机制使得用户交互(如点击)能够触发相应的函数执行,实现菜单的展开与收缩。 - **CSS样式控制**:通过...

    js树形菜单,完全兼容

    在本话题中,我们主要讨论的是使用JavaScript实现的树形菜单,它是一种常见的用户界面元素,用于展示层次结构的数据。 树形菜单在网页设计中扮演着重要角色,它可以将复杂的层级关系以简洁直观的方式呈现给用户。...

    树形菜单制作

    这里的`onClick`回调函数可以用来处理用户点击树形菜单节点时的行为,比如加载更多内容或执行其他业务逻辑。 除了基本的创建,jQuery EasyUI的树形菜单还支持许多高级功能,如异步加载数据、拖放操作、多选节点等。...

    jquery树形菜单很好用理解又简单

    3. **性能优化**:在处理大量数据时,jQuery树形菜单往往采用异步加载策略,只在需要时加载相应的节点,减少初次加载时的页面负担,提升用户体验。 4. **兼容性**:jQuery库对浏览器的兼容性非常好,因此基于jQuery...

    c#树形菜单

    1. **控件介绍**:树形菜单在WinForms中通过`TreeView`控件来实现,它可以显示一个可折叠/展开的节点结构,每个节点可以有任意数量的子节点,形成树状的层级关系。 2. **节点与属性**:每个节点是`TreeNode`对象,...

    jquery树形菜单例子

    树形菜单通常由一系列可以展开和折叠的节点组成,这些节点代表了数据的层级关系。在jQuery中,我们可以通过遍历DOM,添加事件监听器以及修改元素的样式来实现这一功能。例如,我们可以为每个节点添加一个点击事件,...

    下拉树形菜单

    在IT领域,尤其是在网页开发中,"下拉树形菜单"是一种常见的用户界面元素,它允许用户通过展开和折叠节点来浏览层次结构的数据。这里,我们主要关注的是使用jQuery库实现的树形菜单,因为标签中提到了"jquery"。 ...

    Div+Css+js树形菜单

    此外,JavaScript还可以实现更高级的功能,如异步加载子菜单内容、无限级树形菜单的递归渲染等。 在实际开发中,为了提高代码复用性和维护性,可以将树形菜单的逻辑封装成一个JavaScript插件或组件。这个组件可以...

    JS后台管理树形菜单代码.rar

    3. **初始化树形菜单**:调用插件提供的函数,传入相应的配置项,如数据源、节点点击事件等。 4. **渲染数据**:将后台获取的层级数据结构转换成插件可识别的格式,然后传递给插件进行渲染。 5. **事件监听**:根据...

    ztree+dwr实现的异步加载树形菜单

    4. **异步加载数据**:当用户展开树形菜单的某个节点时,ZTree会自动触发异步请求,调用DWR中的后台方法获取子节点数据。后台处理完毕后,将结果返回给前端。 5. **接收并渲染数据**:前端接收到数据后,ZTree会...

Global site tag (gtag.js) - Google Analytics