获取一个检票文本框的值在AJAX onchange事件 [英] Getting a Wicket text box's value in an AJAX onchange event

查看:233
本文介绍了获取一个检票文本框的值在AJAX onchange事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当用户输入一个检票文本字段一个数字,我需要捕获输入的一个AJAX 的onchange 事件中的价值。我怎样才能做到这一点?

When a user enters a number in a Wicket text field, I need to capture the value entered on an AJAX onchange event. How can I do this?

推荐答案

使用的<一个href="http://wicket.apache.org/apidocs/1.4/org/apache/wicket/ajax/form/OnChangeAjaxBehavior.html"><$c$c>OnChangeAjaxBehavior,和你的组件模型将自动更新。您可以通过使用查询值 component.getDefaultModelObject()

add(new TextField<String>(id, someModel)
    .add(new OnChangeAjaxBehavior(){

        private static final long serialVersionUID =
            2462233190993745889L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target){

            // Maybe you want to update some components here?

            // Access the updated model object:
            final Object value = getComponent().getDefaultModelObject();
            // or:
            final String valueAsString =
                ((TextField<String>) getComponent()).getModelObject();
        }
    }));

其实, OnChangeAjaxBehavior 是pretty的侵略性,因为它会注册一个按键侦听器,所以在大多数情况下,新AjaxFormComponentUpdatingBehavior(的onchange){ ...} 将工作一样好,如果你只是想在的onchange 事件。

Actually, OnChangeAjaxBehavior is pretty aggressive because it registers a key listener, so in most cases new AjaxFormComponentUpdatingBehavior("onchange"){...} will work just as well, if you just want the onchange event.

这篇关于获取一个检票文本框的值在AJAX onchange事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆