我想在JSF中使用bootstrap-toggle(http://www.bootstraptoggle.com/)。但是它没有检测到复选框中的更改。这是我的例子(基于这个答案Ajax render not working on SelectBooleanCheckbox):
<h:form id="searchForm">
<h:panelGroup id="searchPanel">
<h:selectBooleanCheckbox binding="#{searchCheckbox}" value="true" pt:data-toggle="toggle">
<f:ajax render="searchForm:searchPanel" />
</h:selectBooleanCheckbox>
<h:panelGroup rendered="#{searchCheckbox.value}">
aaa
</h:panelGroup>
<h:panelGroup rendered="#{not searchCheckbox.value}">
bbb
</h:panelGroup>
</h:panelGroup>
</h:form>
如果我删除了pt:data-toggle =&#34; toggle&#34;它工作正常,我看到&#34; aaa&#34;当启用该复选框并且&#34; bbb&#34;当它被禁用时。但是,如果我不删除它,我会看到开关切换按钮,但我总是看到&#34; aaa&#34;当我改变价值时。
如何解决这个问题?
答案 0 :(得分:1)
最后我得到了解决方案。问题是jsf创建的事件是onclick,它必须是onchange。这就是它的工作原理:
{{1}}