【问题标题】:On h:commandLink Ajax Success/Failure open Modal Dialog在 h:commandLink Ajax 成功/失败打开模式对话框
【发布时间】:2013-12-16 16:41:14
【问题描述】:

我已经实现了一个带有不同命令链接的操作栏,可以触发 ajax 调用。我的支持 bean 处理这些操作。

<a4j:commandLink value="Save" action="#{actionHandler.perform('save')}" execute="@form"
oncomplete="" onerror="">
</a4j:commandLink>

<h:commandLink value="Save">
  <f:ajax execute="@form" actionListener="#{actionHandler.perform('save')}"
</h:commandLink>

我想要实现的是,当 ajax 调用成功/失败时,对于我的操作栏中的每个命令链接,然后显示一个模式对话框以及当前执行的操作特定信息,如标题、消息、重定向 URL 等。在其他请求/响应中基于框架,我们通常会返回一个 JSON 响应并采取相应的行动。但我不知道我们如何在这里实现这一目标。我查看了 Richfaces(正在使用的框架)rich:popupPanel 但找不到任何将参数传递给弹出窗口的方法。有什么建议吗?

【问题讨论】:

    标签: jsf-2 richfaces


    【解决方案1】:

    您可以使用a4j:commandLink(或a4j:commandButton)。示例(来自 RichFaces 4.3 项目):

    <a4j:commandLink action="#{bean.setupTransactionDetails}"
        event="onclick" render="transactionDetails"
        oncomplete="#{rich:component('transactionDetails')}.show()"
        styleClass="richLink">
        <h:outputText value="#{res.transactionType}" />
        <f:setPropertyActionListener value="#{res.transactionId}"
            target="#{bean.transactionId}" />
    </a4j:commandLink>
    

    其中#res.transactionId 是参数,transactionDetails 是弹出窗口的名称。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-09
      • 2013-06-09
      • 2019-01-27
      • 2018-03-18
      • 1970-01-01
      相关资源
      最近更新 更多