【问题标题】:primefaces p:inputSwitch not work in dialog while use update the dialogprimefaces p:inputSwitch 在使用更新对话框时在对话框中不起作用
【发布时间】:2018-01-19 13:03:18
【问题描述】:

我正在使用 p:inputSwitch 进行开关,它在一个对话框中。当表单内的 ajax 调用与 inputSwitch 上的更新结合发生时,inputSwitch 的行为很奇怪,并且总是重置其状态。这是一个简单的可重现示例(不需要支持 bean):

<h:form id="buttonForm">
    <p:commandButton value="button" update="switch" oncomplete="PF('switchDialog').show();" />
    <p:dialog widgetVar="switchDialog">
        <p:inputSwitch id="switch" />
    </p:dialog>
</h:form>

有趣的观察:

  • 当您删除 h:form 后,问题就消失了
  • 当您删除 update 参数时,它会起作用
  • p:inputSwitchp:dialog 之外时,它也可以工作

【问题讨论】:

  • 请发myView的代码b1b2在做什么?
  • 我复制了您的示例,但我不知道您所说的“然后 p:inputSwitch 组件不起作用”是什么意思。你是什​​么意思?在您的示例中,由于update,b1 对我有用,由于缺少update 参数,b2 不起作用。请更简洁地说明什么不起作用,以及应该预期什么。
  • myView 中的函数什么也没做。还有代码:public void b1(){} public void b2(){}
  • 这是我的错。我没有清楚地解释我的问题。在这个例子中,如果我点击名为“b1”的按钮,对话框显示,当我点击 inputSwitch 组件时,它改变了改回来(例如:在我单击它之前,它处于“on”状态,我单击该组件,它变为“off”状态并重新变为“on”状态),但在 b2 按钮中,它没有发生。我在 Firefox 中测试了很多次,还没有在 chrome 上测试。
  • 我现在复制了您的问题。我使用Minimal, Complete, and Verifiable example 编辑了您的帖子 - 完成同行评审后,也许其他人可以帮助您。

标签: jsf primefaces


【解决方案1】:

很抱歉这个僵尸帖子,但我找到了一个可以提供帮助的解决方案。

添加您的

<p:dialog widgetVar="switchDialog" dynamic="true">

问候

【讨论】:

    猜你喜欢
    • 2013-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-05
    • 2013-02-19
    • 2014-12-24
    • 2013-07-02
    • 1970-01-01
    相关资源
    最近更新 更多