如何在JSf中动态地为Datatable列分配id



你好,请查看下面的代码以供参考。

                                    <%
                                        System.out.println("Here???????? 111111 :::::::::::::: "+request.getAttribute("COLUMNSIZE"));
                                        if(request.getAttribute("COLUMNSIZE") != null){
                                            int columnSize = 0;
                                            columnSize = Integer.parseInt(request.getAttribute("COLUMNSIZE").toString());
                                            System.out.println("Here 111111 :::::::::::::: "+columnSize);
                                            for(int loop=0 ; loop < columnSize ; loop++){
                                    %>
                                    <h:column>
                                        <f:facet name="header" >
                                            <h:outputText value="Field <%=loop%>">
                                            </h:outputText>
                                        </f:facet>
                                        <h:outputText value="Password" />
                                    </h:column>
                                    <%
                                        }
                                        }
                                    %>
                                </h:dataTable>

现在我想要的是,我想分配id列动态使用循环变量…但是脚本是不允许的,我找不到其他的方法。

如果你们有什么想法请尽快回复我

如果我读你的问题正确,你想改变你的数据表的列数动态(我可能是错的)。

如果你使用的是icefaces或richfaces,为什么不使用ice:columnsrich:columns呢?

脚本不应该与JSF表达式混合使用。下面的代码可以用来实现你已经尝试过的,把逻辑放在后台bean &

<ui:repeat value="#{backingBean.headerNames}" var="header">
                 <li> 
                      <h:outputText value="#{header.field}" />
                 </li> 
</ui:repeat>

有关详细信息,请参阅JSF EL Documentation

可能是它的工作。

HtmlOutputText test = new HtmlOutputText();
test.setValue("test");
HtmlDataTable dataTable = new HtmlDataTable();
dataTable.getChildren().add(test);

相关内容

  • 没有找到相关文章

最新更新