我刚刚掌握了动态树、自定义样式和 ajax 调用来填充树。一切都表现出色。
但是我随后需要向节点添加过滤功能,就像这里一样:http://fancytree.googlecode.com/hg-history/ac202f4b6cba34b240e4cad294e2283e7272fbeb/demo/sample-ext-filter.html
不幸的是,这是针对 fancytree 而不是 dynatree 的。我花了大约 5 个小时试图让我的代码使用 fancytree 而不是 dynatree,我感到非常沮丧,因为它无法工作,错误消息是乱码,文档令人震惊,而且几乎没有关于互联网上有关于它的信息。
我宁愿坚持使用 dynatree,它确实有效。有什么方法可以在 dynatree 中实现 fancytree 示例中显示的过滤器吗?我是一个 javascript 菜鸟,无法理解代码想要做什么。
最佳答案
尝试以下:
文本框 HTML:
Filter : <input type="text" name="filter" id="filter" />
JavaScript:
$('#filter').keypress(function() {
if($(this).val().length >=2 )
{
var $input = $(this);
$(".dynatree-title").each(function(){
if($(this).text().toLowerCase().indexOf($input.val().toLowerCase()) >= 0) {
$(this).html("<font color='blue'>"+$(this).text() +"</font>");
alert($(this).text());
}
});
}
});
关于javascript - 过滤动态树中的节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17110630/