j-Tree
Konfigurera:
first {Boolean}väljer första trädet, standard:true(alternativ)exec {String}required: länk till en funktion, denna funktion utförs när noden är markerad i trädetautoreset {Boolean}återställer tillståndet när datakällan ändras (alternativt, standard:false)selected {String}valda klass (alternativ, standard:selected)checked {String}är valfritt, en väg tillfunction(arr, component)eller vägen tillpropertycheckednested {Boolean}är valfritt, kontrollerar alla nycklade objekt (default:true)upload {String}valfritt, en väg tillfunction(item, files)(tillåter drag & drop filer)dragdrop {String}valfritt, en väg tillfunction(item, target_item, itemel, targetel)(tillåter drag & drop objekt)options {String}valfritt, en väg tillfunction(item, el)möjliggör en liten knapp för en inline-kontextmeny för varje objektrename {String}alternativ, en väg tillfunction(item, newname, fn_accept(true))unselectexpand {Boolean}är valfritt, kanunselectmarkeras när användaren klickar på det expanderbara objektet (default:false)reselect {Boolean}är valfritt, utvärderarexecigen om trädet är uppfrisknat (default:false)selectexpand {Boolean}alternativ, möjliggör tillägg avselectedklass till utvidgningsbara objekt (default:false)iconoptions {String}-ikon till alternativ (default:ti ti-ellipsis-h)expanded {Boolean}expanderar alla barn (default:false)- NEW:
contextmenu {String}valfritt, en väg tillfunction(item, el)möjliggör muskontextmenyn - NEW:
key {String}ett värde kan användas somindexi nedanstående metoder (default:path)
Datastruktur:
- Objekt Array
- Objektet måste innehålla
name:Stringochchildren:[another similar object]ellerchildren:null(med inga barn) - Objektet kan innehålla
..., icon: 'home' }, det kan ändra en filikon - Objektet kan innehålla
..., classname: 'css_custom_class' }, det lägger till en CSS-klass på elementet "label" - Objekt objekt kan innehålla
..., html: 'RAW_HTML'{String} renderer HTML-taggar istället förnamefält
Metoder:
component.expand([index])- expanderarindexellerall(med ingen definieradindex) nodercomponent.collapse([index])- kollapsarindexellerall(med ingen definieradindex) nodercomponent.clear()- rengör en cache för att uppfriska källancomponent.select(index)- Välj nöttercomponent.unselect()- Oselekt nodercomponent.rename(index)- visarinputför namnrenamn (det fungerar medconfig.rename)
Bra att veta:
Setter utvidgar automatiskt varje objekt genom att lägga till .$pointer-egenskapen med en trädindex.
Använd den med <ui-component name="tree">När komponenten ännu inte är laddad, jComponent Ladda ner den första gången från adressen i DEF.fallback (en av Componentator Författare: Peter Širka. källa: The Componentator Komponenterna i lager, MIT licens.
<style>
.ui-tree { border: 1px solid #E0E0E0; }
.ui-dark .ui-tree { border: 1px solid #404040; }
</style>
<div class="container">
<div class="col-md-6">
<div>Open Web Developer Console</div>
<br />
<ui-component name="tree" path="nodes" config="exec:fn_selected;checked:fn_checked"></ui-component>
</div>
</div>
<script>
var nodes = [];
nodes.push({ name: 'Item 1', children: null });
nodes.push({ name: 'Item 2', children: null });
nodes.push({ name: 'Item 3', children: [{ name: 'SubItem 3 / 1', children: [{ name: 'SubItem 3 / 1 / 1', children: null }]}]});
nodes.push({ name: 'Item 4', children: null });
nodes.push({ name: 'Item 5', children: [{ name: 'Subitem 5 / 1', children: null }, { name: 'Subitem 5 / 2', children: [{ name: 'Subitem 5 / 2 / 1', children: [{ name: 'Subitem 5 / 2 / 1 / 1', children: null }]}] }, { name: 'Subitem 5 / 3', children: null }]});
function fn_selected(node, isGroup, expanded) {
console.log('SELECTED NODE:', node, isGroup, expanded);
}
function fn_checked(checked) {
console.log('CHECKED', checked);
}
</script>