Wicket:OnChange事件不再起作用了

时间:2015-02-18 15:24:54

标签: java wicket

我尝试在一些字段中添加一些改变行为,但它们不会触发。

代码:

    TextField test = new TextField("test", Model.of(""));
    test.setOutputMarkupId(true);
    test.add(new OnChangeAjaxBehavior() {

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
           setResponsePage(ProductPage.class);
        }
    });
    add(test)

标记:

 <input type="text" wicket:id="test" />

我不知道为什么这不起作用..我只是知道这段代码确实有用了...

---- ----编辑

一些额外的信息:我们使用wicket和java 7.我们与svn共享和合并我们的代码。在我看来,非常奇怪的行为是这个代码适用于一台电脑。对于其他所有PC,这都行不通。

更奇怪的是,NO onchange行为不再触发。即使我调试代码,编译器也不会跳转到onUpdate方法,而onchange行为已经完成了他们的工作。

我们实际上不知道为什么...... JavaScript在每个浏览器中都被激活了,我们尝试使用IE,Chrome,Opera和Firerfox

1 个答案:

答案 0 :(得分:0)

检查一下: OnChangeAjaxBehavior

你可以看到

if (!(component instanceof TextField || component instanceof TextArea)) {
   ...
}

所以你可能会尝试另一种行为,例如这应该可以正常工作:

new AjaxFormComponentUpdatingBehavior("onchange"){...}