Ext自带一个Ext.tree.TreeFilter类,可以实现树节点的过滤,但是功能太单薄了。我自己实现了一个树的过滤功能,支持以下功能:
[list]
[*]过滤时忽略父节点,默认情况下忽略
[*]中文、拼音首字母过滤,你输中文就按照中文进行匹配,输拼音就按照首字母匹配
[*]过滤后自动展开匹配结点的所有父节点
[*]匹配字符串为空时将结点全部显示,可配置全部显示时结点状态为全收缩还是全展开,默认不处理
[*]拼音缓存:确保汉字只转一次拼音,提高效率
[/list]
1.1 改动:
1.支持中文模糊匹配,输入汉字可以是字符串任意位置
注意事项:
1.循环遍历操作,树节点过多会卡
2.这是前台过滤,请保证过滤前所有结点加载完毕
考虑到新手,附件的例子直接下载到Ext根目录下用浏览器打开即可查看
初始状态:
[img]http://dl.iteye.com/upload/attachment/240356/3df2f9a6-dde8-3bc8-9b5c-d08e0c1860ba.png[/img]
汉字匹配:
[img]http://dl.iteye.com/upload/attachment/241925/5d8ed231-20aa-3cf0-9c39-88135dcdc0de.png[/img]
拼音首字母匹配:
[img]http://dl.iteye.com/upload/attachment/240349/c2666a5c-886a-3a2b-b9fd-3ba6cb9d9061.png[/img]
[list]
[*]过滤时忽略父节点,默认情况下忽略
[*]中文、拼音首字母过滤,你输中文就按照中文进行匹配,输拼音就按照首字母匹配
[*]过滤后自动展开匹配结点的所有父节点
[*]匹配字符串为空时将结点全部显示,可配置全部显示时结点状态为全收缩还是全展开,默认不处理
[*]拼音缓存:确保汉字只转一次拼音,提高效率
[/list]
1.1 改动:
1.支持中文模糊匹配,输入汉字可以是字符串任意位置
注意事项:
1.循环遍历操作,树节点过多会卡
2.这是前台过滤,请保证过滤前所有结点加载完毕
考虑到新手,附件的例子直接下载到Ext根目录下用浏览器打开即可查看
初始状态:
[img]http://dl.iteye.com/upload/attachment/240356/3df2f9a6-dde8-3bc8-9b5c-d08e0c1860ba.png[/img]
汉字匹配:
[img]http://dl.iteye.com/upload/attachment/241925/5d8ed231-20aa-3cf0-9c39-88135dcdc0de.png[/img]
拼音首字母匹配:
[img]http://dl.iteye.com/upload/attachment/240349/c2666a5c-886a-3a2b-b9fd-3ba6cb9d9061.png[/img]