我是Javascript和jQuery世界的新手。我正在尝试使用下面链接中的jQueryTree表显示树表。
http://ludo.cubicphuse.nl/jquery-treetable/
它提供了一些回调函数
onInitialized
初始化树时触发了回调函数。onNodeCollapse
折叠分支时触发回调函数。onNodeExpand
扩展分支时触发回调函数。onNodeInitialized
在初始化节点时触发了回调函数。我理解回调功能是什么。我无法在Javascript中尝试编码。
可以帮助我理解如何处理这些回调函数。我试图获取所选节点的ID。
任何帮助将不胜感激。
答案 0 :(得分:3)
我正在使用以下代码段(将行的崩溃状态保存到数据库):
holder.treetable({
onNodeCollapse: function(){
var node = this;
var rowobject = node.row;
// do some stuff with the row or ...
},
})
答案 1 :(得分:1)
初始化树插件:
$("#example-advanced").treetable({ expandable: true });
在tr上添加鼠标按下事件以获取节点的id,id存储在data-tt-id
数据属性中。
$("#example-advanced tbody").on("mousedown", "tr", function() {
alert(this.getAttribute('data-tt-id'));
});
答案 2 :(得分:0)
要获取所选节点,您不需要回调函数。只需使用“selected”类获取元素(当你选择一些东西时,就是插件添加的类 - 至少这是我在插件的10秒研究中注意到的)。
试试这个:$(".selected").attr("id");
或者你需要在select上发布一个事件吗?这是一个不同的业务。
答案 3 :(得分:0)
看起来有几个箍要跳过
尝试
$("#jTable").treetable({ expandable: true, onNodeExpand: nodeExpand});
$("#jTable tbody").on("mousedown", "tr", function() {
$(".selected").not(this).removeClass("selected");
$(this).toggleClass("selected");
if(!$(this).is(".expanded")) {
$("#jTable").treetable("expandNode", $(this).data("ttId"));
}
});
然后编写treetable属性
中引用的nodeExapnd
函数
function nodeExpand () {
alert ("expanded");
alert ( $(".selected").data("ttId"));
}