在primefaces数据表日历单元格

时间:2018-01-15 12:09:29

标签: jsf primefaces

我在数据表中有几个Calendar列:

    <p:column headerText="Time From" >
        <p:cellEditor>
            <f:facet name="output">
                <p:calendar pattern="dd/MM/yyyy HH:mm:ss.SSS" value="#{aa.timeFrom}"/>
            </f:facet>
            <f:facet name="input">
                <p:calendar pattern="dd/MM/yyyy HH:mm:ss.SSS" value="#{aa.timeFrom}"/>
            </f:facet>
        </p:cellEditor>
    </p:column>

    <p:column headerText="Time To">
        <p:cellEditor>
           <f:facet name="output">
               <p:calendar pattern="dd/MM/yyyy HH:mm:ss.SSS" value="#{aa.timeTo}"/>
           </f:facet>
           <f:facet name="input">
               <p:calendar pattern="dd/MM/yyyy HH:mm:ss.SSS" value="#{aa.timeTo}"/>
           </f:facet>
       </p:cellEditor>
    </p:column>

还有一个“提交”按钮:

    <p:commandButton value="Submit" action="#{aa.submit}" />

在单元格中单击鼠标按钮时会显示日历选择器。用户可以选择日期/时间或在单元格中输入值。如果输入了无效值,例如“123456”,然后在另一个单元格中单击鼠标,则无效单元格的单元格边框显示为红色,并显示以下错误消息:

“'123456'无法理解为日期和时间。例如:15/01/2018 11:54:02.247”

当用户点击“提交”按钮时,将调用提交操作。问题是在提交操作中,返回的无效值为空,而不是用户输入的值。有效值已正确设置。如何在提交操作中获取用户输入的无效值?在上面的例子中,我想得到“123456”而不是null。

如果无法返回无效值,那么是否可以在提交操作中找到哪些单元格具有无效值?我想区分未输入的值和输入的无效值(两个日期/时间都是可选的)。

0 个答案:

没有答案