Je souhaite ajouter l'événement click aux éléments de liste asynchrones jstree. Le résultat idéal est: lorsque je clique sur les éléments dans le jstree, le contenu de l'élément sera transféré à une requête SQL en tant que paramètre, puis, la requête est exécutée et affiche un ensemble de résultats dans la même page ou dans une autre page.Comment ajouter un événement click à la liste asynchrone de jstree (jQuery plugin)?
Bien que je ne sais pas comment l'implémenter. J'ai trouvé le code suivant dans jquery.tree.js. Et je pense que je devrais modifier l'événement. Mais je ne sais pas comment. Pouvez-vous voir le code et me donner des suggestions ou des conseils?
$("#" + this.container.attr("id") + " li a")
.live("click.jstree", function (event) { // WHEN CLICK IS ON THE TEXT OR ICON
if(event.which && event.which == 3) return true;
if(_this.locked) {
event.preventDefault();
event.target.blur();
return _this.error("LOCKED");
}
_this.select_branch.apply(_this, [event.target, event.ctrlKey || _this.settings.rules.multiple == "on"]);
if(_this.inp) { _this.inp.blur(); }
event.preventDefault();
event.target.blur();
return false;
})
Le code de la page:
<script type="text/javascript" >
$(function() {
$("#async_json_1").tree({
data : {
type : "json",
opts : {
url : "twodimen.php"
}
},
callback:{
onselect: function(node,tree){
}
}
});
});
</script>
Merci beaucoup.
@Harpax, merci. J'ai besoin de faire une manipulation DOM dans la section onselect? –
si j'ai compris votre question correcte, alors non .. vous pouvez obtenir l'id de noeuds (l'id de la li) simplement avec $ (noeud) .attr ("id") et l'utiliser pour l'appel ajax pour faire votre db- question – harpax