Tôi muốn cập nhật SelectOneMenu thứ hai khi tôi chọn bất kỳ mục nào của SelectOnMenu đầu tiên. Như bây giờ, tôi nhận được các giá trị cho SelectOneMenus từ một ManagedBean. Tôi đoán tôi đã sử dụng AJAX (jquery) để gửi các tham số cho ManagedBean.SelectOneMenu cập nhật các SelectOneMenu khác
<h:form>
<div class="center">
<h:panelGrid id="editTable" columns="2" styleClass="center">
...
<h:outputText value="#{msg.timetable_list_category}" />
<h:selectOneMenu class="category">
<f:selectItems value="#{categoryBackingBean.categorys}" var="c"
itemLabel="#{c.category_Name}" itemValue="#{c.id}" />
</h:selectOneMenu>
<h:outputText value="#{msg.timetable_list_seminarblock}" />
<h:selectOneMenu class="seminarblock">
<f:selectItems value="#{seminarblockBackingBean.seminarblocks}" var="s"
itemLabel="#{s.seminarblock_Name}" itemValue="#{s.seminarblock_Id}" />
</h:selectOneMenu>
...
</h:panelGrid>
...
</div>
</h:form>
Có khả năng gửi tham số mà không có một changeListener không? –
Bạn có thể, xin vui lòng, xây dựng bối cảnh của bạn thêm một chút sau đó? Bạn đang cố gắng đạt được điều gì và/hoặc bạn có hạn chế nào? – Gamb
Với giải pháp của bạn nó hoạt động tốt ngay bây giờ, nhưng có một lỗi nhỏ trong đó. Khi bạn mở trang này lần đầu tiên, không có giá trị trong SelectOneMenu thứ 2, bởi vì valueChangedEvent chỉ được gọi, nếu bạn thay đổi mục đã chọn lần đầu tiên. –