我正在使用Seam制作Java / HTML程序。我试图在<h:selectOneMenu>
被检查时显示<h:selectBooleanCheckbox>
。我通过在复选框中使用“onclick =”form.submit()“并将下拉列表放在<s:div rendered>
中来实现它,但每当页面重新加载时,下拉列表正在使用的变量被重置为首选。我很确定这是因为<s:div>
。有人知道如何让它在下拉列表中保持正确的选择吗?谢谢。
以下是复选框和下拉列表的代码:
<h:selectBooleanCheckbox id="checkbox" value="#{printLabel.code}" label="barcode" onclick="changeDropdowns()"/>
<br />
<s:div rendered="#{printLabel.code}">
<h:outputLabel id="locationLabel" value="   Location"/>
<h:selectOneMenu id="locationDrop" value="#{printLabel.codeLoc}">
<f:selectItems value="#{printLabel.getBarcodeTypes()}" />
</h:selectOneMenu>
</s:div>
答案 0 :(得分:1)
如果你想用ajax来解决它,你可以这样做: 可能是其他事件然后onclick
<h:selectBooleanCheckbox id="checkbox" value="#{printLabel.code}" label="barcode" >
<a4j:support event="onclick" reRender="parentdiv" />
</<h:selectBooleanCheckbox>
<br />
<s:div id="parentdiv">
<s:div rendered="#{printLabel.code}">
<h:outputLabel id="locationLabel" value="   Location"/>
<h:selectOneMenu id="locationDrop" value="#{printLabel.codeLoc}">
<f:selectItems value="#{printLabel.getBarcodeTypes()}" />
</h:selectOneMenu>
</s:div>
</s:div>
添加标签库
xmlns:a4j="http://richfaces.org/a4j"