I am created the js tree to show the folder path name. My problem how to follow database table certain column data to show the tooltip.
Below is my coding, this coding <div id="folder_jstree" title="JTM"></div>
I just hardcode to write the title “JTM” to show the tooltip:
<?php $folderData = mysqli_query($mysql_con,"SELECT * FROM folders"); $folders_arr = array(); while($row = mysqli_fetch_assoc($folderData)){ $parentid = $row['parentid']; if($parentid == '0') $parentid = "#"; $selected = false;$opened = false; if($row['id'] == 2){ $selected = true;$opened = true; } $folders_arr[] = array( "id" => $row['id'], "parent" => $parentid, "text" => $row['name'], "state" => array("selected" => $selected,"opened"=>$opened) ); } ?> <!-- Initialize jsTree --> <div id="folder_jstree" title="JTM"></div> <!-- Store folder list in JSON format --> <textarea style="display:none;" id='txt_folderjsondata'><?= json_encode($folders_arr) ?></textarea> <script> $(document).ready(function(){ var folder_jsondata = JSON.parse($('#txt_folderjsondata').val()); $('#folder_jstree').jstree({ 'core' : { 'data' : folder_jsondata, 'multiple': false } }); }); $( function() { $( document ).tooltip(); } ); </script>
Below is my database table name is folders
, I need follow the table name
to show the table category
in the tooltip. For example, if I mouse pointer MPK 400 Pengurusan Kewangan
in the JS tree, then the tooltip will show me the categroy
name is ‘JKP’. I have three types show in the table folders
, there are JKP
,JTM
and ‘JTM (Berhubung Kod 100-1/1/2)’:
Hope someone can guide me or show me the examples to solve this problem. Thanks.
Advertisement
Answer
You can apply a tooltip on the jstree hover event. You’ll have to keep the tooltip text in the node’s data.
In the php code you can include the category
column in the array
$folders_arr[] = array( "id" => $row['id'], "parent" => $parentid, "text" => $row['name'], "category" => $row['category'], "state" => array("selected" => $selected,"opened"=>$opened) );
In the javascript code after the jsTree initialization you could set the event handler.
$('#folder_jstree').bind('hover_node.jstree', function (e, data) { $("#" + data.node.id).attr("title", data.node.original.category); });