<div class="apiDetail">
<div>
	<h2><span>Function(filter, isSingle, parentNode, invokeParam)</span><span class="path">zTreeObj.</span>getNodesByFilter</h2>
	<h3>Overview<span class="h3_info">[ depends on <span class="highlight_green">jquery.ztree.core</span> js ]</span></h3>
	<div class="desc">
		<p></p>
		<div class="longdesc">
			<p>Search the single node's data or collection of nodes's data by custom rules.</p>
			<p class="highlight_red">Can be customized complex search rules.</p>
			<p class="highlight_red">Please use zTree object to executing the method.</p>
		</div>
	</div>
	<h3>Function Parameter Descriptions</h3>
	<div class="desc">
	<h4><b>filter</b><span>Function</span></h4>
	<p>Custom search function. e.g. function filter(node) {...}</p>
	<p>filter's parameter: node (node's data -- JSON)</p>
	<p>filter's return: boolean (true means: match the rules; false means: don't match the rules)</p>
	<h4 class="topLine"><b>isSingle</b><span>Boolean</span></h4>
	<p>isSingle = true means: search only one node</p>
	<p>isSingle = false means: search the array of the nodes</p>
	<p class="highlight_red">If this parameter is omitted, as same as false</p>
	<h4 class="topLine"><b>parentNode</b><span>JSON</span></h4>
	<p>The search range, you can search node from a parent node's child nodes.</p>
	<p class="highlight_red">If this parameter is omitted, zTree will search node from all nodes.</p>
	<h4 class="topLine"><b>invokeParam</b><span>anything</span></h4>
	<p>Custom data object by user, used to calculate in the filter function.</p>
	<h4 class="topLine"><b>Return </b><span>Array(JSON) / JSON</span></h4>
	<p>If isSingle = true, will return the first node's data (JSON) what be matched. If no match, return null.</p>
	<p>If isSingle = false, will return the array of all nodes's data what be matched. if no match, return [ ].</p>
	</div>
	<h3>Examples of function</h3>
	<h4>1. Search the nodes which their 'name' contains 'test' and 'level' is 2.</h4>
	<pre xmlns=""><code>function filter(node) {
    return (node.level == 2 && node.name.indexOf("test")>-1);
}
......
var treeObj = $.fn.zTree.getZTreeObj("tree");
var node = treeObj.getNodesByFilter(filter, true); // search only one node
var nodes = treeObj.getNodesByFilter(filter); // search the array of the nodes
</code></pre>
</div>
</div>