【问题标题】:show details row's datatable显示详细信息行的数据表
【发布时间】:2015-06-05 12:37:04
【问题描述】:

我在 .xhtml 页面中有一个数据表,它显示了数据库的产品。 假设我只能看到每一行的名称和代码,如何在同一页面中显示产品的更多详细信息?

此外,我的产品 bean 在 ViewScope 中,所以我无法在另一个 .xhtml 页面中显示详细信息(我已经尝试了很多次,但如果你们有解决方案,那就太好了)。

PS:我对 Javascript 还一无所知,所以我更喜欢基于 jsf 和 java 的解决方案 :)

【问题讨论】:

    标签: jsf datatable


    【解决方案1】:

    您的意思是要在数据表中显示更多字段? 添加更多列..

    <h:dataTable value="#{pr.products}" var="p">
                    <h:column>
                        <f:facet name="header">Name</f:facet>
                        #{p.name}
                    </h:column>
    
                    <h:column>
                        <f:facet name="header">Code</f:facet>
                        #{p.code}
                    </h:column>
    
                    <h:column>
                        <f:facet name="header">Price</f:facet>
                        #{p.price}
                    </h:column>
                    ........
    </h:dataTable>
    

    JSF 示例:http://www.mkyong.com/jsf2/jsf-2-datatable-example/

    如果您使用 primefaces,请参阅展示:http://www.primefaces.org/showcase/ui/data/datatable/basic.xhtml

    编辑 如果您想制作一个显示所选产品详细信息的对话框,请参阅 primefaces 展示的“选择”示例。

    【讨论】:

    • 大声笑我不是那个意思,我知道如何创建列。我想要这样的东西(我会写一些选项):1)数据表中每个产品附近的按钮,显示产品的其他详细信息,但在同一页面中或 2)每个产品附近的链接带来另一个xhtml 页面,其中将包含该产品的所有详细信息。但是正如我所说,我的产品bean是在viewscoped中,所以我不知道这是否可能(如果我很好地理解viewscoped逻辑,则不会以这种方式保存参数)
    • @Enduavon 哦,好的。请参阅 primefaces 展示的“选择”示例。它有一个“查看”按钮,并在对话框中显示详细信息。 (同一页面)链接:primefaces.org/showcase/ui/data/datatable/selection.xhtml
    • 谢谢!但我没有使用primefaces。想知道我是否可以使用基本的 JSF 组件来做到这一点......
    • 如果您想在新页面中显示它,请传递一个密钥并在新 bean 中检索它。或者开始使用@ViewAccessScoped
    • 当然只是搜索互联网,但逐步搜索。
    猜你喜欢
    • 2017-12-16
    • 1970-01-01
    • 2016-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-06
    • 1970-01-01
    • 2016-11-24
    相关资源
    最近更新 更多