我试图在wicket框架中获取dropdownchoice的选定值,但我无法得到它。 如何在dropdownchoice的更改事件中获取DropDownChoice的选定值? 谢谢。 我
答案 0 :(得分:7)
这很简单,您所要做的就是使用AjaxFormComponentUpdatingBehavior
:
DropDownChoice<String> ddc = new DropDownChoice<String>("ddc", model, Arrays.asList("a", "b", "c"));
ddc.add(new AjaxFormComponentUpdatingBehavior("onchange") {
@Override
protected void onUpdate(AjaxRequestTarget target) {
System.out.println("selected: " + model.getObject());
}
});
答案 1 :(得分:2)
PropertyModel
是解决此类问题的不错选择。 MyObject
是一个对象,并且有一个字符串name
。我已覆盖其中的toString()
方法以命名并且它正常工作。我建议使用此方法。
topicDropDown = new DropDownChoice<MyObject>("wicktID", new PropertyModel<MyObject> (this.object, "exp"), new LoadableDetachableModel<List<MyObject>>() {
@Override
protected List<MyObject> load() {
return top.getAllObjects();
}