我想在wicket框架中选择dropdownchoice的值,但我无法得到它。 如何获取DropDownChoice的Dropdownchoice更改事件的选定值? 谢谢。 我检票框架DropDownChoice
回答
这很容易,你需要做的就是使用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());
}
});
考虑到这个ajax行为将更新DropDownChoice的ModelObject并执行其验证。如果验证失败,将调用'onError'而不是'onUpdate'。注意这有一个缺点;涉及此组件的'FormValidators'不会自动执行。如果您只想获取输入,而不更新模型对象,请覆盖['getUpdateModel()'](http://wicket.apache.org/apidocs/1.4/org/apache/wicket/ajax/form/AjaxFormComponentUpdatingBehavior。 html#getUpdateModel())并返回false。 – 2012-03-06 15:03:53
使用OnChangeAjaxBehavior代替它会更加地道吗? – prasopes 2013-02-06 13:17:48
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();
}
它可能迟到了。感谢上帝,尼桑找到了他的答案。 – 2013-04-03 02:33:29
非常感谢。 – fledgling 2014-04-29 10:40:53
- 1. DropDownChoice检票获得价值
- 2. 检票框架
- 3. 检票DropDownChoice跳到某些选择
- 4. 检票口 - DropDownChoice与对象选中
- 5. 检票DropDownChoice ListView中,没有get方法定义
- 6. 检票DropDownChoice没有为类定义的方法
- 7. 检票器:在DropDownChoice项目选择事件中更新模型
- 8. Symfony框架投票系统
- 9. 动态框文本检票
- 10. 在检票框架中使用复选框启用/禁用文本框
- 11. 自动化检票框架(Java)基础web应用程序
- 12. 在检票框架中请求对象的会话处理
- 13. Spring的管理对象始终为空。检票框架
- 14. 在检票框架中嵌入Excel的内容
- 15. 如何在检票框架中呈现<base>标签
- 16. DropDownChoice onSelectionChnaged
- 17. 框架检测
- 18. Django评论框架和投票
- 19. 检索UITableViewCell框架
- 20. Wicket DropDownChoice格式
- 21. 便门:Dropdownchoice
- 22. 复选框在pageablelistview在检票口
- 23. 检票口onsubmit信息对话框
- 24. 在检票框架中刷新AjaxButton的onSubmit中的整个窗体
- 25. 正确加载Web应用程序框架(检票)中的资源(javascript)?
- 26. 与检票
- 27. 获取检票
- 28. 当检票
- 29. 检票setResponsePage
- 30. 在检票口
显示一些代码,粘贴错误......“它不工作”不帮助我们理解什么问题。 – 2012-03-07 16:04:44