【问题标题】:p:confirmDialog is not working when I try to call a method in primefaces with java当我尝试使用 java 在 primefaces 中调用方法时,p:confirmDialog 不起作用
【发布时间】:2020-06-18 14:00:24
【问题描述】:

我有一个按钮可以触发带有一些代码的方法,但现在我正在尝试设置确认消息,以防用户误点击该按钮。我在primefaces 上看到了confirmDialog,我编写了代码,但它不起作用。当我单击该按钮时,会显示确认信息,但当我单击“是”按钮时,没有任何反应。

这是我的代码:

    <h:form id="forma" prependId="false">
        <p:growl id="messages" showDetail="true" sticky="true" />  
        <p:confirmDialog global="true">
            <p:commandButton value="Yes" type="button" />
            <p:commandButton value="No" type="button" />
        </p:confirmDialog>
        <div align="center">
            <p:commandButton id="botonCveGeo" 
                             value="Iniciar proceso" 
                             style="width:130px;height:25px;" 
                             update="messages"
                             ajax="false"
                             actionListener="#{actCveGeo.procesoActCveGeo()}"
                             title="Inicia proceso de actualizar clave geoestadistica">
                <p:confirm header="Confirm" message="Are you sure?" icon="ui-icon-alert"/>
            </p:commandButton>
        </div>
    </h:form>

你知道哪里出了问题吗?

谢谢

【问题讨论】:

  • 我昨天尝试了那个解决方案,这两个选项实际上和非这些选项都对我有用......我看到的唯一不同的是,在解决方案中评论说 ajax 应该是真的,但在这种情况下我需要将 ajax 设置为 false,否则按钮上的方法无法调用
  • 如果你输入ajax=true 这将起作用。但我不知道你能不能做出这样的改变
  • 你是什么primefaces版本?
  • 我目前正在使用 PF 7.0,我设置了 ajax="true" 但它也不起作用,我认为这可能是我正在使用的平台的一些配置

标签: primefaces


【解决方案1】:

@tsotzolas 是正确的,这是您在 PF 中已经报告的问题:https://github.com/primefaces/primefaces/issues/99

您目前不能将ajax=false 用于确认对话框行为。

如果您明确需要此行为,请对该问题投赞成票。

【讨论】:

  • 我尝试将链接中的代码调整为我的,但我只刷新了页面,方法仍然没有触发
  • 我认为它需要从核心修复,我从未尝试过任何解决方法。
猜你喜欢
  • 1970-01-01
  • 2016-03-02
  • 2018-09-08
  • 2017-02-18
  • 2014-09-17
  • 2016-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多