2012-04-09 5 views
1

можно переименовать название узла, используя значение из приглашения скрипта java после создания узла?jsTree создать узел, переименовать название узла с помощью приглашения JS

! [Пользователь правой кнопкой мыши и создать новый узел на дереве] [1] после создания нового узла, пользователь автоматически переходит в всплывающее меню и предложено ввести имя узла

пользователю создавать новый узел: http://i.stack.imgur.com/X6hIl.png

пользователя предложено ввести новое имя узла: HTTP: //i.stack.imgur.com/WJmJw.png

и имя узла будет автоматически переименовывается из значения от пользователя

t он делает это потому, что всплывающий экран фактически выполнит операцию запроса из базы данных и отправит конкретную строку в качестве заголовка узла.

Это сценарий, чтобы получить всплывающее окно из контекстного меню дерева.

$(function() { 
     $("#demo1").jstree({ 
    "plugins" : [ "themes", "html_data", "crrm", "contextmenu" ] 
     }) 
     .bind("rename_node.jstree", function (e, data) {  
    var data = prompt("enter node name "); 
     }); 
    }); 

ответ

2

Нет необходимости связываться с обработчиком события rename_node. Вы можете переписать контекстное меню «переименовать», чтобы запустить свою собственную функцию.

$(function() { 
$("#demo1").jstree({ 
    "contextmenu" : { 
     items : { // Could be a function that should return an object like this one 
      "create" : false, 
      "rename" : { 
          "_class"   : "myClass", 
          "separator_before" : false, 
          "separator_after" : false, 
          "label"    : "Rename Node", 
          "action"   : function (obj) { 
                //Do some action here or pass the object to another function 
                //ex: myFunc(obj); 
                $(obj).find("a:first").text("My new node label."); 
               } 
         }, 
      "remove" : false, 
      "ccp" : false 
     } 
    }, 
    "plugins" : [ "themes", "html_data", "crrm", "contextmenu" ] 
}); 
}); 
Смежные вопросы