0
在我们的项目,我们有一个AjaxLink:检票AjaxLink擦除的onclick听众
<a title="some title.." wicket:id="addMessage">Add</a>
前前后后Page.class:
add(new AjaxLink() {
@Override
public void onClick(final AjaxRequestTarget target) {
//...
}
@Override
protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
attributes.getAjaxCallListeners().add(new AjaxCallListener() {
@Override
public CharSequence getPrecondition(Component component) {
return "return isPropagationAllowed()";
}
});
}
}
(与方法getPrecondition()
从一些条件来执行停止onclick()
方法添加AjaxCallListener
(它应该从你的js返回一个函数的名字,返回布尔值))
然后我为它定义一个监听器通过JS HTML元素(+ JQuery的),并把一些行为是:
$('[title]').each((i, elem) => elem.onclick = (event) => {
/* ..manually open a tooltip.... */
})
它按预期工作,直到AjaxLink执行。然后我的onclick监听器自败出于某种原因,然后让它工作,我应该手动绑定。
你有任何想法,这是为什么(其他听众的擦除)发生,以及如何防止?