텍스트 입력 및 선택 목록의 행을 생성하는 데이터 테이블이 있고 제출시 값이 null입니다. 왜냐하면 jsf가 각 입력에 대해 별도의 임의 ID를 생성하기 때문입니다. 난 정말 행에 의해 데이터가 필요하고 내가 원하는 걸 구문 분석. 어떤 제안? :입력 행이있는 Datatable
<h:dataTable id="returnableItems" value="#{returnableItemsBean.orderCustomerFamilyItems}" var="item" styleClass="data stripeTable center">
<h:column>
<f:facet name="header">Item Number</f:facet>
<h:outputText id="itemNum" value="#{item.itemNum}"/>
</h:column>
<h:column>
<f:facet name="header">Description</f:facet>
<h:outputText value="#{item.itemDescription}"/>
</h:column>
<h:column>
<f:facet name="header">Original Quantity</f:facet>
<h:outputText value="#{item.originalQuantity}"/>
</h:column>
<h:column>
<f:facet name="header">Remaining Quantity</f:facet>
<h:outputText value="#{item.eligibleQuantity}"/>
</h:column>
<h:column>
<f:facet name="header">Quantity For Return</f:facet>
<h:panelGrid styleClass="stepper">
<span class="ns ui-stepper">
<input id="returnQuantity" type="text" name="returnQuantity" size="2" autocomplete="off" class="ui-stepper-textbox" value="0" />
<button type="button" name="ns_button_1_0" value="" class="ui-stepper-plus" onclick="setMaxVal(this,#{item.eligibleQuantity});">+</button>
<button type="button" name="ns_button_2_0" value="" class="ui-stepper-minus">-</button>
</span>
</h:panelGrid>
</h:column>
<h:column>
<f:facet name="header">Reason for Return</f:facet>
<h:selectOneMenu id="returnReason" value="#{returnableItemsBean.orderReason.ordReasonCode}">
<f:selectItems value="#{returnableItemsBean.orderReasons}"/>
<f:converter converterId="orderReasonConverter"/>
</h:selectOneMenu>
</h:column>
<h:column>
<f:facet name="header">Return/Replacement</f:facet>
<h:selectOneMenu id="returnOption">
<f:selectItem itemLabel="Option" itemValue=""/>
<f:selectItem itemLabel="Return" itemValue="return"/>
<f:selectItem itemLabel="Replacement" itemValue="replacement"/>
</h:selectOneMenu>
</h:column>
</h:dataTable>
DataTable의
Martlark
예 - clientId는 UIForm과 같은 상위 명명 컨테이너 (예 : h : form) 및 UIData (예 : h : dataTable)로 제어되며 id = "form1 : table1 : 3 : quantityCount"의 형식을 취할 수 있습니다. 자바 스크립트 내의 EL 표현식은 페이지가 클라이언트에 렌더링 될 때 각 행에 대해 평가됩니다. – McDowell
Facelets를 사용하는 유사한 예 : http://illegalargumentumentception.blogspot.com/2009/05/jsf-using-component-ids-in-data-table.html – McDowell