Как добавить "onchange" SimpleAttributeModifier в DropDownChoice в Apache Wicket

Я хочу запустить определенный javascript, когда выбор изменяется в выпадающем списке, поэтому я добавил простой модификатор атрибута, например так:

ddc.add(new SimpleAttributeModifier("onchange", "calc();"));

Но если я сделаю это, он полностью переопределит метод wicket onSelectionChanged(). Мне нужен способ выполнить оба.

Спасибо

2 ответа

Решение

Вы можете использовать AttributeAppender

ddc.add(new AttributeAppender("onchange", "calc();", " "));

Последний аргумент - это используемый разделитель.

Используйте OnChangeAjaxBehavior для этого вот так:

    ddc.add(new OnChangeAjaxBehavior() {

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            target.appendJavaScript("calc();");
        }
    });
Другие вопросы по тегам