Ajax 在JSF中使用引导切换

Ajax 在JSF中使用引导切换,ajax,twitter-bootstrap,jsf,checkbox,event-handling,Ajax,Twitter Bootstrap,Jsf,Checkbox,Event Handling,我想在JSF中使用bootstrap toggle()。但是,它没有检测到复选框中的更改。以下是我的示例(基于此答案): aaa bbb 如果我删除pt:data toggle=“toggle”,它会正常工作,当复选框启用时,我会看到“aaa”,当复选框禁用时,我会看到“bbb”。然而,如果我不删除它,我会看到开关切换按钮,但我总是看到“aaa”当我改变值 你知道怎么解决这个问题吗?我终于找到了解决办法。问题是jsf创建的事件是onclick,必须是onchange。这就是它的工作原理: &

我想在JSF中使用bootstrap toggle()。但是,它没有检测到复选框中的更改。以下是我的示例(基于此答案):


aaa
bbb
如果我删除pt:data toggle=“toggle”,它会正常工作,当复选框启用时,我会看到“aaa”,当复选框禁用时,我会看到“bbb”。然而,如果我不删除它,我会看到开关切换按钮,但我总是看到“aaa”当我改变值


你知道怎么解决这个问题吗?

我终于找到了解决办法。问题是jsf创建的事件是onclick,必须是onchange。这就是它的工作原理:

<h:form id="searchForm">
  <h:selectBooleanCheckbox binding="#{searchCheckbox}" value="true" pt:data-toggle="toggle">
    <f:ajax event="change" render="searchForm:searchPanel" />
  </h:selectBooleanCheckbox>
  <h:panelGroup id="searchPanel">
    <h:panelGroup rendered="#{searchCheckbox.value}">
      aaa
    </h:panelGroup>
    <h:panelGroup rendered="#{not searchCheckbox.value}">
      bbb
    </h:panelGroup>
  </h:panelGroup>
</h:form>

aaa
bbb
<h:form id="searchForm">
  <h:selectBooleanCheckbox binding="#{searchCheckbox}" value="true" pt:data-toggle="toggle">
    <f:ajax event="change" render="searchForm:searchPanel" />
  </h:selectBooleanCheckbox>
  <h:panelGroup id="searchPanel">
    <h:panelGroup rendered="#{searchCheckbox.value}">
      aaa
    </h:panelGroup>
    <h:panelGroup rendered="#{not searchCheckbox.value}">
      bbb
    </h:panelGroup>
  </h:panelGroup>
</h:form>