【问题标题】:p:ajax blur event not triggered at first time primefaces jsf 2p:ajax模糊事件第一次没有触发primefaces jsf 2
【发布时间】:2013-05-07 07:17:34
【问题描述】:
<p:inputText id="reportDesc"
                                value="#{reportBean.report.reportDesc}" rows="4" cols="20"
                                required="true" requiredMessage="Report Desc is Required"
                                styleClass="">
                                <p:ajax event="blur" update=":dataForm :growlForm:growl"
                                    listener="#{reportBean.handleDialogClose}" />
                                <f:attribute name="reportId"
                                    value="#{reportBean.report.reportId}"></f:attribute>
                            </p:inputText>

第一次没有触发 ajax 监听器。

【问题讨论】:

  • 然后触发ajax监听?(第二次)
  • 是的。它现在可以工作了,在加载页面操作按钮中添加“ajax=true”来解决这个问题。
  • 您发布答案以结束您的问题。

标签: ajax jsf-2 primefaces


【解决方案1】:

我也有你熟悉的问题,因为对于模糊事件,更新属性是无效的,你应该使用“dateselect”事件来代替。 但是,如果您仍然引用“模糊”事件,您应该创建新的 remoteCommand 来更新预期的元素。此远程命令将在模糊事件的“oncomplete”中调用

<h:form>
    <p:calendar
        value="#{foo.dtValidade}">
        <p:ajax
            event="blur" listener="#{foo.updateCriteria}" oncomplete="rc"/>
    </p:calendar>

    <p:remoteCommand name="rc" update="criteriosDataGridTeste" >

    <h:panelGroup id="criteriosDataGridTeste">
        <td><h:selectOneMenu value="#{foo.idtpresult}">
                <f:selectItem itemLabel="ok" itemValue="ok" />
                <f:selectItem itemLabel="not ok" itemValue="not ok" />
            </h:selectOneMenu></td>
    </h:panelGroup>

</h:form>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多