No i mam kolejny problem z tym dziwnym JStree .. ale to juz chyba bardziej z dziedziny jquery niż samego skryptu..
Zrobiłem sobie coś takiego:
  1. $(function () {
  2. $("#stworz_powiazanie").click(function () {
  3. $("#pages-wrapper").jstree("create");
  4. });
  5. $("#usun_powiazanie").click(function () {
  6. if(!confirm("Czy na pewno chcesz usunąć tę stronę?"))return;
  7. $("#pages-wrapper").jstree("remove");
  8. });
  9. $("#zmien_nazwe").click(function () {
  10. $("#pages-wrapper").jstree("rename");
  11. });
  12. $("#cut").click(function () {
  13. $("#pages-wrapper").jstree("cut");
  14. });
  15. $("#paste").click(function () {
  16. $("#pages-wrapper").jstree("paste");
  17. });
  18. $("#pages-wrapper").jstree({
  19. "core" : {
  20. "animation" :0,
  21. },
  22. "html_data" : {
  23. "ajax" : {
  24. "url" : "./pobierz.php",
  25. "data" : function (n) {
  26. return { id : n.attr ? n.attr("node_id") : 0 };
  27. }
  28. } },
  29. "plugins" : ["themes","html_data","ui","crrm","types"],
  30. });
  31. $("#pages-wrapper").bind("remove.jstree", function (e, data) {
  32. data.rslt.obj.each(function () {
  33. $.ajax({
  34. async : false,
  35. type: 'POST',
  36. url: "./server.php",
  37. data : {
  38. "operation" : "remove_node",
  39. "id" : this.id.replace("node_","")
  40. },
  41. success : function (r) {
  42. if(!r.status) {
  43. data.inst.refresh();
  44. }
  45. }
  46. });
  47. });
  48. })
  49.  
  50. $("#pages-wrapper").bind("rename.jstree", function (e, data) {
  51. $.ajax({
  52. type: "POST",
  53. url: './server.php',
  54. data: {
  55. "operation" : "rename_node",
  56. "id" : data.rslt.obj.attr("id").replace("node_",""),
  57. "title" : data.rslt.new_name
  58. },
  59. success : function (r) {
  60. if(!r.status) {
  61. data.inst.refresh();
  62. alert('Zmieniono Nazwe');
  63. }
  64. }
  65. });
  66. })

I przycisk remove, create działa a rename nie.. ktoś mi powie dlaczego ? Zaczołem testować to i w fireBugu wywala taki komunikat:
" TypeError: obj is undefined
return obj.nodeValue; "

i teraz nie wiem co z tym fantem zrobic.. do skończenia zabawy z tym jstree zostało mi tylko to.. i na koniec sie wysypała zmiana nazw..
a i moze ktoś mi powie co sie kryje po tym zapytaniem ajaxowym w linijce 26 ? Bo może to powoduje błąd ?


Można usunąć, problem rozwiązany..