Как добавить опцию в контекстное меню jsTree - PullRequest
0 голосов
/ 26 апреля 2019

Может кто-нибудь мне помочь. Я недостаточно хорошо понимаю документацию jsTree, чтобы добиться того, что я пытаюсь сделать.

Я хочу добавить опцию в контекстное меню jsTree, вот что я сделал:

$(function () {
    $('#jstree').jstree({
        "plugins" : [
            "contextmenu",
            "dnd",
            "changed"
            ],

        "core" : {
            "check_callback" : true
        },

        "dnd" : {
            "use_html5" : true
        },
        "contextmenu" : {
            "items" : function(node) {
                var tmp = $.jstree.defaults.contextmenu.items();
                tmp.details = {};
                tmp.details.label = "Details";
                tmp.action = function(data) {
                        console.log(data);
                    };

                return tmp;
            }
        }
    });
});

Но это добавляет две опции в контекстное меню, а именно: «Детали» и «undefined». Выбор любого из этих двух параметров не делает console.log (data); на что я надеялся.

Что я делаю не так? Как мне добавить только один элемент (т.е. удалить неопределенное) и как заставить его что-то сделать?

1 Ответ

0 голосов
/ 26 апреля 2019

Дух - только что видел мою ошибку:

tmp.action = function(data) {

должно быть:

tmp.details.action = function(data) {
...