在触发事件"onkeyup"时获取输入数据我遇到了小问题.我有这样的输入和其他数据:
// El-cheapo model for form
private static final ValueMap cheapModel = new ValueMap();
//some code...
//...
Form form = new Form( "pushNotificationForm" );
form.setOutputMarkupId( true );
final Label actualSizeLabel = new Label( ACTUAL_NOTIFICATION_SIZE_ID, new Model<String>( actualSize ) );
actualSizeLabel.setOutputMarkupId( true );
final TextField<String> titleTextField = new TextField<String>( TITLE_TEXTFIELD_ID, new PropertyModel<String>(
cheapModel, TITLE_TEXTFIELD_ID ) );
titleTextField.setRequired( true );
titleTextField.add( new AjaxEventBehavior( "onkeyup" )
{
@Override
protected void onEvent( AjaxRequestTarget ajaxRequestTarget )
{
actualSize = Integer.toString( (getTitle() ).getBytes().length );
ajaxRequestTarget.add( actualSizeLabel );
}
} );
form.add( titleTextField );
form.add( actualSizeLabel );
//.. some code
//later
private String getTitle()
{
return cheapModel.getString( TITLE_TEXTFIELD_ID );
}
Run Code Online (Sandbox Code Playgroud)
actualSize保持为null,直到我提交表单,但为什么?请帮忙