【问题标题】:Validating a wrong date entry in rich faces验证丰富面孔中的错误日期条目
【发布时间】:2011-03-04 11:27:03
【问题描述】:

在我们的一项功能中,我们有一些用于内联编辑的日期字段,我们已启用手动输入。如果在 rich:calendar 组件中,我们手动输入了错误的日期或垃圾数据,它甚至不会调用 action 方法。根据我们的要求,我们需要为此类字段的日期验证显示错误消息。是否有任何方法可以跟踪在日历字段中输入的日期与此组件不匹配。 参考代码:

<rich:calendar id="actualOpeningDtCal" rendered="#{!empty aProgram.id}" 
    value="#{aProgram.actualOpeningDate}" placeholder="dd-mmm-yyyy" 
    inputSize="20" enableManualInput="true"  datePattern="dd-MMM-yyyy"  
    buttonIcon="../content/images/calendar.png" showWeeksBar="false"
    showFooter="false">
    <a4j:support event="oninputblur" reRender="aList" ajaxSingle="false" 
        action="#{aController.inlineEdit}"> 
        <f:setPropertyActionListener value="#{aProgram}" 
            target="#{aController.inLineEditaBean}" />
    </a4j:support>      
    <a4j:support event="oncollapse" reRender="aList" ajaxSingle="false"
        action="#{aController.inlineEdit}"> 
        <f:setPropertyActionListener value="#{aProgram}" 
            target="#{aController.inLineEditaBean}" />
    </a4j:support>   
</rich:calendar>   

【问题讨论】:

    标签: jsf calendar richfaces


    【解决方案1】:

    如果验证失败,则会出现错误消息。也许你没有展示它们。使用 &lt;rich:messages&gt; 而不是 &lt;h:messages&gt; 让它们在 ajax 响应中呈现。

    使用immediate="true"(绕过验证)然后在操作方法中进行验证是一种不好的做法,但可能会奏效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-27
      • 1970-01-01
      • 2023-04-08
      • 1970-01-01
      • 2012-03-29
      • 2011-01-28
      • 1970-01-01
      • 2013-09-07
      相关资源
      最近更新 更多