Событие onchange
происходит только тогда, когда фокус перемещается от компонента.(Это универсальный браузер / javascript).
Вместо этого вам нужно подключить обработчик к событию onkeypress
.
Вам нужно не AjaxEventBehavior
, а AjaxFormComponentUpdatingBehavior
:
add( new AjaxFormComponentUpdatingBehavior( "onchange") {
@Override
protected void onUpdate(AjaxRequestTarget target) {
System.out.println( "Value: "+field.getValue() );
}
});
Хотя он работает и с getInput()
, но обычно несколько более высокий уровень (должным образом экранированный и поддерживаемый моделью) getValue()
лучше подходит.