javascript
JSF Tree学习...
=====================================
使用JSF中的<ig:Sidebar></ig:Sidebar>實現動態加載菜單,其中bar.getChildren().add(aSidebarGroup);是實現動態加載首節點,HtmlSidebarGroup aSidebarGroup = (HtmlSidebarGroup) application.createComponent(HtmlSidebarGroup.COMPONENT_TYPE);
????aSidebarGroup.setText(boardName);
????aSidebarGroup.setExpanded(true);
????aSidebarGroup.setId(viewRoot.createUniqueId());實現加載該節點下的子節點,非常方便。
private Sidebar buildSideBar(Sidebar bar)
?{
??boolean isInitialised = bar.getAttributes().get("IS_INITIALISED")!=null;
??
??if (!isInitialised) {
???// Get a reference to the JSF Application,?
???// we need it to create value bindings later-on
???Application application = FacesContext.getCurrentInstance().getApplication();
???UIViewRoot viewRoot = FacesContext.getCurrentInstance().getViewRoot();
???
???/* Create Infragistics SidebarGroup */
???// Set the Sidebar's width and height
???bar.getAttributes().put("style","width: 155px; height: 590px;");
???// Create SidebarGroup
???List list = this.getBoardNameForMenu();
???for(int i = 0 ;i<list.size();i++)
???{
????Object[] row = (Object[])list.get(i);
???//Object[] row = (Object[])list.listIterator().next();
????String boardId = String.valueOf(row[0]);
????String boardName = String.valueOf(row[1]);
????String parentId = String.valueOf(row[2]);
????HtmlSidebarGroup aSidebarGroup = (HtmlSidebarGroup) application.createComponent(HtmlSidebarGroup.COMPONENT_TYPE);
????aSidebarGroup.setText(boardName);
????aSidebarGroup.setExpanded(true);
????aSidebarGroup.setId(viewRoot.createUniqueId());
???
????// Add the newly created SidebarGroup to the Sidebar's children list
????bar.getChildren().add(aSidebarGroup);
????
????List ls = this.getBoardNameForMenuBar(Integer.parseInt(boardId));
????if(ls.size() != 0)
????{
?????for(int j=0;j<ls.size();j++)
?????{
??????Object[] row1 = (Object[])ls.get(j);
??????String boardid = String.valueOf(row1[0]);
??????String boardname = String.valueOf(row1[1]);
??????//HtmlSidebarGroup aSidebarGroup = (HtmlSidebarGroup) application.createComponent(HtmlSidebarGroup.COMPONENT_TYPE);
??????HtmlLink aLink1 = (HtmlLink)application.createComponent(HtmlLink.COMPONENT_TYPE);
??????aLink1.setId(viewRoot.createUniqueId());
??????//aSidebarGroup.setText(sidebarGroupNameStr);
??????//aSidebarGroup.setExpanded(true);
??????//aSidebarGroup.setId(viewRoot.createUniqueId());
??????//aLink1.setId(parentId);
??????aLink1.setUrl("/pages/bbs/visitor/topic/topicforboard.jsf?boardid="+boardid+"");
??????aLink1.setValue(boardname);
??????aSidebarGroup.getChildren().add(aLink1);
?????}
????}
????
???}
本文轉自kenty博客園博客,原文鏈接http://www.cnblogs.com/kentyshang/archive/2008/06/04/1213825.html如需轉載請自行聯系原作者
kenty
總結
以上是生活随笔為你收集整理的JSF Tree学习...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C#内部类
- 下一篇: Redis基本命令及其使用