每次单击菜单项时,都会以编程方式添加新选项卡。我已经搜索了动态标签创建的所有问题,并发现了很多未答复的查询。所以我的问题是,是否可以动态创建选项卡?下面是我的工作在过去的一周,而不是在视线选项卡中的代码..使用PrimeFaces以编程方式添加选项卡
我使用Primefaces 5.0,JSF 2.2钻嘴鱼科
动态菜单 -
DefaultMenuItem windowItem = new DefaultMenuItem(node);
windowItem.setCommand("#{windowContainer.add}");
windowItem.setImmediate(true);
WindowContainer辅助Bean
@ManagedBean
@ViewScoped
public class WindowContainer implements Serializable {
private List<Window> windows;
@PostConstruct
public void init() {
windows = new ArrayList<Window>();
windows.add(new Window("window"+windows.size(),"first tab"));
}
public void add() {
windows.add(new Window("window" + windows.size(), "some content"));
RequestContext req = RequestContext.getCurrentInstance();
req.update("WindowContainer");
}
public void remove(Window window) {
windows.remove(window);
}
public List<Window> getWindows() {
return windows;
}
public void setWindows(ArrayList<Window> windows) {
this.windows = windows;
}
Windows是只有outputtext的简单选项卡。
观
<p:tabView id= "WindowContainer" value="#{windowContainer.windows}" var="window">
<p:tab title="#{window.title}">
<p>#{tab.content}</p>
<p:commandButton value="Close" action="#{windowContainer.remove(window)}" />
</p:tab>
</p:tabView>
将不胜感激,如果有人能在正确的方向指向我。 在此先感谢!
看看[this](http://stackoverflow.com/questions/22293708/how-to-add-tabs-in-tabview-in-primefaces-dynamically-on-click-of-a-command -但)? – ForguesR 2014-10-03 15:13:03