:h를 선택하는 방법 h : dataTable의 selectOneRadio가 포스트 백에서 선택 상태로 유지됩니까? 이 같은 정상적인 상황에서
<h:form>
<h:selectOneRadio value="#{bean.gender}">
<f:selectItem itemValue="Male" itemLabel="Male" />
<f:selectItem itemValue="Female" itemLabel="Female" />
<f:selectItem itemValue="Other" itemLabel="Other" />
</h:selectOneRadio>
<h:commandButton value="Submit" action="#{bean.action}" />
</h:form>
하나 개의 라디오 버튼을 선택하면 라디오 버튼이 다시 게시에 선택된 상태됩니다 다른 & disselects. (동일한 뷰가 렌더링 될 때)
그러나 <h:dataTable>
과 같은 반복 구성 요소를 처리 할 때는 선택이 손실됩니다.
<h:form id="hashMapFormId">
<b>HASH MAP:</b>
<h:dataTable value="#{playersBean.dataHashMap.entrySet()}" var="t" border="1">
<h:column>
<f:facet name="header">Select</f:facet>
<h:selectOneRadio id="radiosId" onclick="deselectRadios(this.id);"
value="#{playersBean.select}">
<f:selectItem itemValue="null"/>
</h:selectOneRadio>
</h:column>
</h:dataTable>
<h:commandButton value="Show Hash Map Selection"
action="#{playersBean.showSelectedPlayer()}" />
</h:form>
을 JavaScript-
function deselectRadios(id) {
var f = document.getElementById("hashMapFormId");
for (var i = 0; i < f.length; i++)
{
var e = f.elements[i];
var eid = e.id;
if (eid.indexOf("radiosId") !== -1) {
if (eid.indexOf(id) === -1) {
e.checked = false;
} else {
e.checked = true;
}
}
}
}
당신은 라디오 버튼 창피는 포스트 백에 선택 얻을 것을 볼 :
지금 제출 버튼, 응답을 누릅니다. 이 단점을 해결하는 방법?
나는이이 구성 요소의 속성 itemValue
null
것에 기인 매우 잘 알고
<f:selectItem itemValue="null"/>