【发布时间】:2012-07-10 09:38:03
【问题描述】:
我有一个TextField,我在其中添加了一个AjaxFormComponentUpdatingBehavior,以便在用户写入一些字符串时获取当前值。
filterByObject = new TextField<String>("filterByObject", true, new PropertyModel<String>(searchParams, "objectFilter"));
AjaxFormComponentUpdatingBehavior changeFilterBinded = new AjaxFormComponentUpdatingBehavior ("onkeyup") {
@Override
protected void onUpdate(AjaxRequestTarget target) {
target.addComponent(componentToUpdate);
}
};
filterByObject.add(changeFilterBinded);
当我在textfield 中放入一些字符时,onUpdate 方法被正确调用,并且我的组件根据searchParams 的当前状态正确更改。
不幸的是,当我使用 Backspace 取消我插入的内容时,onUpdate 没有被调用。
我尝试更改事件(onkeypress、onkeydown、onchange 等...)但它不起作用。只有onChange 有效,但我必须将焦点转移到另一个组件。
我怎样才能挽救这一天?
【问题讨论】:
标签: java ajax wicket onkeyup backspace