Display Hierarchical Data As A Searchable Tree - simpleTree
| File Size: | 11.9 KB |
|---|---|
| Views Total: | 8878 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
A simple yet full-featured tree view jQuery plugin which makes it possible to display your hierarchical data as a searchable, expandable and collapsible tree.
More features:
- Child node count
- Custom CSS styles for selected nodes.
- Useful options and API methods.
- Custom expand/collapse symbols.
See also:
How to use it:
1. Load the jQuery simpleTree plugin's JavaScript and CSS files after loading jQuery JavaScript library (slim build is recommended).
<link href="simpleTree.css" rel="stylesheet"> <script src="/path/to/jquery.slim.min.js"></script> <script src="simpleTree.js"></script>
2. Create a placeholder element for the tree.
<div id="mytree"></div>
3. Prepare your hierarchical data to be presented as a tree.
let data = [{
label: 'HTML',
value: 'html',
expanded: true // optional
children: [{
label: 'HTML5',
value: 'html5'
}, {
label: 'XML',
value: 'xml'
}]}, {
label: 'JavaScript',
value: 'javaScript',
children: [{
label: 'React',
value: 'react',
children: [{
label: 'React Native',
value: 'reactnative'
}]}, {
label: 'Angular',
value: 'angular'
}]
}];
4. Render the data as a tree.
$('#mytree').simpleTree(options, data);
5. To enable the live filter functionality, create a search field and provide the jQuery element in the JavaScript as follows. simpleTree then takes control over the provided box, handling user input.
<input type="search" id="example">
var options = {
searchBox: $('#example'),
searchMinInputLength: 2
};
$('#mytree').simpleTree(options, data);
6. All default configuration options.
var options = {
// Optionally provide here the jQuery element that you use as the
// search box for filtering the tree. simplTree then takes control
// over the provided box, handling user input
searchBox: undefined,
// Search starts after at least 3 characters are entered in the
// search box
searchMinInputLength: 3,
// Number of pixels to indent each additional nesting level
indentSize: 25,
// Show child count badges?
childCountShow: true,
// Symbols for expanded and collapsed nodes that have child nodes
symbols: {
collapsed: '▶',
expanded: '▼'
},
// these are the CSS class names used on various occasions.
// If you change these names, you also need to provide
// the corresponding CSS class. See simpleTree.css
css: {
childrenContainer: 'simpleTree-childrenContainer',
childCountBadge: 'simpleTree-childCountBadge badge badge-pill badge-secondary',
highlight: 'simpleTree-highlight',
indent: 'simpleTree-indent',
label: 'simpleTree-label',
mainContainer: 'simpleTree-mainContainer',
nodeContainer: 'simpleTree-nodeContainer',
selected: 'simpleTree-selected',
toggle: 'simpleTree-toggle'
}
};
7. API methods.
$('#mytree').simpleTree(options, data);
8. Execute a function when a node is selected/deselected.
$('#mytree').simpleTree(options, data)
.on('simpleTree:change', function(selectedNode){
// do something
})
This awesome jQuery plugin is developed by eScienceCenter. For more Advanced Usages, please check the demo page or visit the official website.











