我的一个屏幕上有一个jsf数据表,我在那里输入了日期。因此,我想用rich:calendar替换输入文本。有人能告诉我必须为此做些什么改变吗?
这是我目前的代码:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:a4j="http://richfaces.org/a4j"
xmlns:rich="http://richfaces.org/rich">
<h:head>
<title> Tracker</title>
</h:head>
<h:body>
<h3>list</h3>
<h:form>
<h:dataTable value="#{userMB.entriesRecords}"
var="entryRecord">
<h:column>
<f:facet name="header">Date</f:facet>
<h:inputText value="#{entryRecord.entry.date}"
rendered="#{entryRecord.editable}">
<f:convertDateTime pattern="dd/MM/yyyy" />
</h:inputText>
<h:outputText value="#{entryRecord.entry.date}"
rendered="#{not entryRecord.editable}">
<f:convertDateTime pattern="dd/MM/yyyy" />
</h:outputText>
</h:column>
</h:dataTable>
<h:commandButton value="Save All Changes" action="#{userMB.saveAll}"></h:commandButton>
</h:form>
</h:body>
</html>
答案 0 :(得分:0)
将h:inputText
替换为
<rich:calendar enableManualInput="true"
id="entryDate"
datePattern="dd/MM/yyyy"
value="#{entryRecord.entry.date}"
label="Entry Date">
<f:convertDateTime pattern="dd/MM/yyyy" />
</rich:calendar>
在RichFaces 4.3中使用rich:dataTable和rich:列进行了测试。