将依赖的页面fuzzysearch.js文件中部门代码修改即可,具体如下:
从官方下载相应的搜索树功能依赖的fuzzysearch.js,引入页面。将官方的输入框绑定的初始化方法删除,绑定在按钮触发事件里,如:
$(document).ready(function(){ var t = $("#tree"); $.fn.zTree.init(t, setting, zNodes); // fuzzySearch('tree','#search',null,false);不用按钮搜索 demoIframe = $("#testIframe"); demoIframe.bind("load", loadReady); var dictionariesType = window.localStorage.getItem('type'); refresh(dictionariesType); window.localStorage.removeItem('type'); $('#table-scroll').niceScroll(); });
在fuzzysearch()中参数加一个boolean值
function select() { fuzzySearch('tree','#search',true,false,true); }
并修改fuzzysearch.js源码如下:
function fuzzySearch(zTreeId, searchField, isHighLight, isExpand,selfBind)
if(selfBind) { var _keywords = $(searchField).val(); searchNodeLazy(_keywords); //call lazy load } else { $(searchField).bind('input propertychange', function() { var _keywords = $(this).val(); searchNodeLazy(_keywords); //call lazy load }); }在这说明下,else中是源码本来绑定的输入框的方法,if中是后来改的根据按钮触发绑定的方法。改完后保存,一个由绑定输入框的搜索树节点就转为绑定按钮触发搜索树节点了。@_@其他内容参照官方文档和demo,在这我就不一一说明了。