У меня есть DIV и я хочу показать listItem-Panel, и если я нажму на DIV, listItem-Panel будет заменена на listItemDetail-Panel.По этой причине DIV содержит Child-DIV с Wicket: ID = curPanel.
div.add(new AjaxEventBehavior("onclick") {
@Override
protected IAjaxCallDecorator getAjaxCallDecorator() {
return new AjaxCallDecorator() {
@Override
public CharSequence decorateScript(final CharSequence script) {
return String.format("$('#%s').fadeOut(1000, function(){ %s });", div.getMarkupId(), script);
}
};
}
@Override
protected void onEvent(final AjaxRequestTarget target) {
final Panel curPanel = (Panel) div.get("curPanel");
if (curPanel.getClass().equals(listItemDetailPanel.class)) {
curPanel.replaceWith(listItemPanel);
} else {
curPanel.replaceWith(listItemDetailPanel);
}
target.addComponent(div);
target.appendJavascript("new Effect.FadIn($('" + div.getMarkupId() + "'))");
}
});
Я использую AjaxCallDecorator для постепенного исчезновения DIV (который содержит listItemPanel или listItemDetailPanel).После этого панель будет заменена другой, а затем через fadeIn появится DIV.
Но это проблема!Что я должен сделать, чтобы исчезнуть в DIV после Ajax-Replacement?
Вы можете увидеть вызов target.appendJavascript (), но это не сработало!
Мне нужно решение для Wicket/ WiQuery.Я знаю решение для jQuery и хочу принять их.
Спасибо Кристоф