primeFaces中 <p:dataList>简单使用

本文介绍了PrimeFaces的<p:dataList>组件的使用,包括展示简单数据和创建可编辑数据单元格的功能。通过XHTML代码示例展示了如何绑定数据源并展示多个字段,以及如何创建包含编辑功能的列表,如日期选择器和输入文本框。此外,提到了管理Bean和数据列表的数据来源。

1. <p:dataList>的功能:

以列表布局方式显示一组数据,可以是多种数据类型,此处仅介绍两种我自己实验过的类型。

2.<p:dataList>属性:

3.实现的功能:

(1)以简单数据记录的形式显示简单的数据

具体实现:

XHTML代码:

                <p:dataList  value="#{outNoticeMng.editOutNoticeList}"  var="outNoticeDataJSF" >
                                   #{outNoticeDataJSF.ponInputdate},
                                        #{outNoticeDataJSF.ponOutdate},
                                        #{outNoticeDataJSF.prdInvoiceno},
                                        #{outNoticeDataJSF.prdQty},
                                        #{outNoticeDataJSF.prdBoxqty},
                                        #{outNoticeDataJSF.prdDestination},
                                        #{outNoticeDataJSF.prdCarriagemode}                                                           
                 </p:dataList>


(2)以可编辑的数据单元显示数据.

具体实现:


XHTML代码:

                     <p:dataList  value="#{outNoticeMng.editOutNoticeList}"  var="outNoticeDataJSF" >
                                    <h:panelGrid   columns="4" >    
                                        <p:outputLabel value="做成日:"/>
                                        <p:calendar     readonlyInput="true"   value="#{outNoticeDataJSF.ponInputdate}" pattern="yyyy-MM-dd" />
                                        <p:outputLabel value="出库预订日:"/>                                  
                                        <p:calendar    readonlyInput="true"  value="#{outNoticeDataJSF.ponOutdate}"  pattern="yyyy-MM-dd" />
                                        <p:outputLabel  value="发票号:"></p:outputLabel>
                                        <p:inputText  value="#{outNoticeDataJSF.prdInvoiceno}"/>
                                        <p:outputLabel  value="数量:"></p:outputLabel>
                                        <p:inputText  value="#{outNoticeDataJSF.prdQty}"/>
                                        <p:outputLabel  value="箱数:"></p:outputLabel>
                                        <p:inputText  value="#{outNoticeDataJSF.prdBoxqty}"/>
                                        <p:outputLabel  value="目的地:"></p:outputLabel>
                                        <p:inputText  value="#{outNoticeDataJSF.prdDestination}"/>
                                        <p:outputLabel  value="运输方式:"></p:outputLabel>
                                        <p:inputText  value="#{outNoticeDataJSF.prdCarriagemode}"/>
                                         <p:commandButton value="提交" actionListener="#{outNoticeMng.submit()}"/>                            
                                    </h:panelGrid>                                   
                                </p:dataList>


4.说明:

(1)outNoticeMng:后台的管理Bean

(2)editOutNoticeList:outNoticeMng的属性,类型为List.








<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:cc="http://java.sun.com/jsf/composite" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:p="http://primefaces.org/ui"> <cc:interface/> <cc:implementation> <!-- 消息框 --> <p:growl showDetail="true" id="grlInfo" widgetVar="grlInfo"> <p:autoUpdate/> </p:growl> <h:form id="tableForm"> <p:dataTable id="lineIncisionShow" styleClass="lineIncisionShow" var="item" value="#{teamProcess_lineIncisionShow.dataList}"> <p:column headerText="更新时间" width="80" style="text-align:left;"> <h:outputText value="#{item.lastUpdateDate}"> <f:convertDateTime pattern="dd日 HH:mm" timeZone="GMT+8"/> </h:outputText> </p:column> <p:column headerText="单号板件" width="130" style="text-align: left;"> <h:outputText value="#{item.orderNo}-#{item.plateNo}/#{item.plateName}"/> </p:column> <p:column headerText="状态" width="100" style="text-align: center;#{item.status == '加工中' ? 'background-color:#92d14f;' : item.status == '已送达-待分配' ? 'background-color:#ffc000;' : item.status == '已分配-待上机' ? 'background-color:#63d9ff;' : item.status == '已完成-待转序' ? 'background-color:#fe0000;color:#fcfb15;' : ''}"> <h:outputText value="#{item.status}"/> </p:column> <p:column headerText="安排机床" width="100" style="text-align: left;"> <h:outputText value="#{item.planMachineNo}"/> </p:column> <p:column headerText="出货厂房" width="150" style="text-align: left;"> <h:outputText value="#{item.factoryName}"/> </p:column> <p:column headerText="已加工时长" width="80" style="text-align: left;#{item.processTime > item.workTime ? 'background-color:#fe0000;font-weight:bold;' : ''}"> <h:outputText value="#{item.processTime}分钟"/> </p:column> <p:column headerText="预计加工时长" width="100" style="text-align: left;"> <h:outputText value="#{item.workTime}分钟"/> </p:column> <p:column headerText="送达时间" width="80" style="text-align: left;"> <h:outputText value="#{item.actualServiceTime}"> <f:convertDateTime pattern="dd日 HH:mm" timeZone="GMT+8"/> </h:outputText> </p:column> <!--<p:column headerText="备注"></p:column>--> </p:dataTable> <p:poll interval="3" update="@(.lineIncisionShow)" listener="#{teamProcess_lineIncisionShow.refreshData}" onerror="console.error('更新失败');"/> </h:form> </cc:implementation> </html> 中 <p:poll interval="3" update="@(.lineIncisionShow)" listener="#{teamProcess_lineIncisionShow.refreshData}" onerror="console.error('更新失败');"/>不执行
最新发布
12-19
<p:dataTable id = "lineIncisionShow" var="item" value="#{teamProcess_lineIncisionShow.dataList}"> <p:column headerText="更新时间" width="80" style="text-align:left;"> <h:outputText value="#{item.lastUpdateDate}"> <f:convertDateTime pattern="dd日 HH:mm" timeZone="GMT+8"/> </h:outputText> </p:column> <p:column headerText="单号板件" width="130" style="text-align: left;"> <h:outputText value="#{item.orderNo}-#{item.plateNo}/#{item.plateName}"/> </p:column> <p:column headerText="状态" width="100" style="text-align: center;#{item.status == '加工中' ? 'background-color:#92d14f;' : item.status == '已送达-待分配' ? 'background-color:#ffc000;' : item.status == '已分配-待上机' ? 'background-color:#63d9ff;' : item.status == '已完成-待转序' ? 'background-color:#fe0000;color:#fcfb15;' : ''}"> <h:outputText value="#{item.status}"/> </p:column> <p:column headerText="安排机床" width="100" style="text-align: left;"> <h:outputText value="#{item.planMachineNo}"/> </p:column> <p:column headerText="出货厂房" width="150" style="text-align: left;"> <h:outputText value="#{item.factoryName}"/> </p:column> <p:column headerText="已加工时长" width="80" style="text-align: left;#{item.processTime > item.workTime ? 'background-color:#fe0000;font-weight:bold;' : ''}"> <h:outputText value="#{item.processTime}分钟"/> </p:column> <p:column headerText="预计加工时长" width="100" style="text-align: left;"> <h:outputText value="#{item.workTime}分钟"/> </p:column> <p:column headerText="送达时间" width="80" style="text-align: left;"> <h:outputText value="#{item.actualServiceTime}"> <f:convertDateTime pattern="dd日 HH:mm" timeZone="GMT+8"/> </h:outputText> </p:column> <!--<p:column headerText="备注"></p:column>--> </p:dataTable> <p:poll interval="180" update="lineIncisionShow" listener="#{teamProcess_lineIncisionShow.refreshData}" /> 为什么不会自动更新
12-19
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值