【发布时间】:2014-03-08 19:33:03
【问题描述】:
我想在选中复选框时显示面板,或者在未选中复选框时隐藏面板。 当复选框的值更改时,以下代码可以正常工作。 但是,最初(在构建网页时)始终显示面板。由于取消选中该复选框,因此不应显示 outputLabel ("hallo")。只有选中复选框后,才会显示文本。所以,这里出了点问题……
代码如下:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html">
<h:body>
<h:form id="myForm">
<h:selectBooleanCheckbox id="myCheckbox" onclick="hideOrShow(this.checked);"/>
<h:panelGrid id="myPanel" columns="2" >
<h:outputLabel for="hallo" value="Halli Hallo" />
</h:panelGrid>
</h:form>
</h:body>
<script type="text/javascript">
function hideOrShow(show) {
var obj = document.getElementById("myForm:myPanel");
if (show) {
obj.style.display = "block";
} else {
obj.style.display = "none";
}
}
</script>
如何解决这个问题?
【问题讨论】:
-
您可以在文档准备好后将其隐藏,然后在显示和隐藏之间切换吗?
-
抱歉,我该怎么做?
标签: javascript jsf-2 checkbox