Dans notre projet, nous avons un AjaxLink:Wicket AjaxLink permet d'effacer les auditeurs onclick
<a title="some title.." wicket:id="addMessage">Add</a>
Incide 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()";
}
});
}
}
(Ajout AjaxCallListener
avec la méthode méthode getPrecondition()
arrête onclick()
d'être exécuté sur certaines conditions (il devrait retourner le nom d'une fonction de votre js qui retourne booléen))
Puis je définis un écouteur pour cela élément html par js (+ JQuery) et de mettre un comportement que:
$('[title]').each((i, elem) => elem.onclick = (event) => {
/* ..manually open a tooltip.... */
})
Il fonctionne comme prévu jusqu'à ce AjaxLink exécute. Ensuite, mon écouteur onclick disparaît pour une raison quelconque, puis pour le faire fonctionner, je devrais lier manuellement.
Avez-vous une idée pourquoi cela se produit (l'effacement des autres auditeurs) et comment empêcher cela?