我正在创建一个包含定价服务列表的 ListView 。每个定价服务都有一个不同术语的列表,这是一个 DropDownChoice。问题是,当我在下拉列表中选择各种值时,Term 的值不会更新。这是一个向导,因此我尝试在单击“下一步”之前使用正确的术语更新向导(向导对象有一个包含术语对象的 ProductOrder 对象)。
谢谢, 泰耶
public ServiceSelectionStep(final NewSubscriptionWizard wizard) {
final ListView<PricedService> serviceChoiceList = new ListView<PricedService>(
"serviceList",
wizard.getCompanyPriceModel().getPricedServices()) {
protected void populateItem(ListItem<PricedService> item) {
final PricedService service = item.getModel().getObject();
// Adding labels to the list.
addPricedServiceLabels(item, service);
DropDownChoice<Term> termsDropDown = new DropDownChoice<Term>(
"term",
new PropertyModel<Term>(wizard.getProductOrder(), "term"),
service.getTerms(),
new ChoiceRenderer<Term>("description"));
item.add(termsDropDown);
}
};
add(serviceChoiceList);
}
最佳答案
您可以使用 AJAX 回调来完成此操作。检查 Wicket Examples 上的“下拉选择示例”。
http://www.wicket-library.com/wicket-examples/ajax/
This是一个重要的文件,它向您展示如何使用正确的模型来执行此操作。
关于java - Wicket Wizard Dropdown modelValue 将不会更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14140729/