selectBooleanCheckbox 中的 Primefaces onclick 和 oncomplete 事件
Primefaces onclick and oncomplete event in a selectBooleanCheckbox
我有一个 selectBooleanCheckbox primefaces,它执行一个可以延迟的激活过程,我想在此期间添加一个进度条或加载图像,从开始(点击)到什么时候java 过程完成(oncomplete)。
我最初的想法是这样的:
<p:selectBooleanCheckbox value="#{name}" id="check" onclick="PF('progressBar').show()" oncomplete="PF('progressBar').hide(),>
<p:ajax update=":form,:progressBar"
listener="#{bean.activate}"
process="@form" />
</p:selectBooleanCheckbox>
但我看到 p: selectBooleanCheckbox 没有 onclick 和 oncomplete 事件,就像它们拥有的其他 primefaces 组件一样,只有onchange 事件,所以它对我不起作用。
对于这种情况,什么是有效的选择?
我想到的替代方案是 运行 来自我的 java bean 的 primefaces 脚本,就在这个过程之前和之后。
我放弃的另一个选项是 JSF selectBooleanCheckbox,因为它确实具有 onclick 属性但没有 oncomplete 属性
一个更好的解决方案,只使用 Java 脚本而不是 Java 使用 JSF AJAX 方式。
这是 OP 的初衷,但没有意识到您需要将 "on" 方法放在 AJAX 调用上而不是组件本身。
<p:selectBooleanCheckbox value="#{name}" id="check">
<p:ajax update=":form,:progressBar"
listener="#{bean.activate}"
process="@form"
onstart="PF('progressBar').show()"
oncomplete="PF('progressBar').hide()" />
</p:selectBooleanCheckbox>
我有一个 selectBooleanCheckbox primefaces,它执行一个可以延迟的激活过程,我想在此期间添加一个进度条或加载图像,从开始(点击)到什么时候java 过程完成(oncomplete)。
我最初的想法是这样的:
<p:selectBooleanCheckbox value="#{name}" id="check" onclick="PF('progressBar').show()" oncomplete="PF('progressBar').hide(),>
<p:ajax update=":form,:progressBar"
listener="#{bean.activate}"
process="@form" />
</p:selectBooleanCheckbox>
但我看到 p: selectBooleanCheckbox 没有 onclick 和 oncomplete 事件,就像它们拥有的其他 primefaces 组件一样,只有onchange 事件,所以它对我不起作用。
对于这种情况,什么是有效的选择? 我想到的替代方案是 运行 来自我的 java bean 的 primefaces 脚本,就在这个过程之前和之后。 我放弃的另一个选项是 JSF selectBooleanCheckbox,因为它确实具有 onclick 属性但没有 oncomplete 属性
一个更好的解决方案,只使用 Java 脚本而不是 Java 使用 JSF AJAX 方式。
这是 OP 的初衷,但没有意识到您需要将 "on" 方法放在 AJAX 调用上而不是组件本身。
<p:selectBooleanCheckbox value="#{name}" id="check">
<p:ajax update=":form,:progressBar"
listener="#{bean.activate}"
process="@form"
onstart="PF('progressBar').show()"
oncomplete="PF('progressBar').hide()" />
</p:selectBooleanCheckbox>