Помогите решить задачу
задача такая мне нужно что бы вывести название кнопок из бд а затем с js создать древо кнопок
древо я создал а вот появились другие проблеммы в жс я новичек потмоу и прошу помощи как мне сделать так что когда древо закончится повилось форма для инпута и если был нажат другой предок то другая древо закрылось помогите заранее спосибо вот весь код [php] <?php if (isset($_POST["id"])){ $db = mysql_connect("localhost", "root", ""); mysql_select_db("test", $db); $id = $_POST["id"]; $result = mysql_query("SELECT * FROM `Buttons` WHERE `parent` = $id"); $buttons = array(); while($button = mysql_fetch_array($result)){ array_push($buttons, array($button["id"], $button["parent"], $button["value"])); } echo json_encode($buttons); exit(); } ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Buttons tree</title> <link rel="stylesheet" href="/css/bootstrap.min.css"> </head> <body> <div class="container"> <div class="col-lg-12 main" id="field"> <h1>Buttons tree</h1> <div class="jumbotron"> <p>Root buttons</p> <div id="rootButtons"> </div> </div> </div> </div> <!-- scripts --> <script src="/js/jquery-2.1.4.min.js"></script> <script> $(function(){ $.post("/buttons.php", {id: 0}, function(e){ var buttons = $.parseJSON(e); $.each(buttons, function(key, value){ $("#rootButtons").append("<button class='btn btn-danger' id='parent' idb='"+value[0]+"'>"+value[2]+"</button>"); }) }) //Click on parent $(document).on("click","#parent", function(){ var obj = $(this); var idb = $(this).attr("idb") $.post("/buttons.php", {id: idb}, function(data){ var buttons = $.parseJSON(data); $("#field").append("<div class='jumbotron' id='buttons"+idb+"'><p>Childs for "+obj.html()+" ("+idb+")</p></div>"); $.each(buttons, function(key, value){ $("#buttons"+idb).append("<button class='btn btn-success' id='parent' idb='"+value[0]+"'>"+value[2]+"</button>"); }) }) }) }) </script> [html] </body> </html>[html] |
Это не дерево, это дочерние элементы у своего родителя. Дерево, это N-уровней вложения может быть в каждой ветви и запросом к базе подобном вашему иерархии этих вложений не получить.
Поэтому уточнить надо что имеется ввиду под окончанием дерева, и в каком случае - при получении JSON описывающего элементы или по действию пользователя, или ...? |
Часовой пояс GMT +3, время: 02:29. |