Jstree - предварительно установите флажки

Я использую JsTree 1.0, и у меня возникают проблемы с предварительной проверкой флажков с помощью плагина для флажков.

Вот мой полный код:

 $(".tree").bind("loaded.jstree", function (event, data) {
                 $('.tree li.checked').each(function () {
                     $(this).prop("checked", true);
                })
            }).jstree({ 
                "core" : { "animation" : 0}, 
                "json_data" : {
                    "ajax" : {
                        "url" : "/admin/posts/get_taxonomy_tree",
                        "data" : function (n) { 
                            return { id : n.attr ? n.attr("id") : 0 }; 
                        }
                    },
                    "progressive_render" : true
                },
                "checkbox" : {
                    "real_checkboxes" : true,
                    "real_checkboxes_names" : function(n){
                        return [("term_taxonomy_id_" + (n[0].id || Math.ceil(Math.random() * 10000))), 1]; 
                    }
                    },
                "themes" : {
                    "url"   :   "/assets/admin/js/jstree/themes/default/style.css",
                    "icons": false
                },
                "plugins" : [ "themes", "json_data", "checkbox" ]
            }).delegate("a", "click", function (event, data) { event.preventDefault(); });

Я добавил событие привязки для loading.jstree, но это неправильно - не работает.

Есть идеи? Спасибо!

РЕДАКТИРОВАТЬ:

Решение состоит в том, чтобы добавить класс jstree-checked, это по умолчанию предварительно установит флажок


person dzm    schedule 27.09.2011    source источник
comment
так что все флажки, которые вы хотите проверить, изначально имеют класс, верно?   -  person Evan    schedule 27.09.2011
comment
Я могу применить этот класс, в настоящее время он не возвращает его в json.   -  person dzm    schedule 28.09.2011


Ответы (3)


Обязательно добавьте класс «checked», потому что он раньше устанавливал флажки при загрузке =)

person Evan    schedule 28.09.2011
comment
Конечно, почему бы и нет... достаточно близко :) - person dzm; 30.09.2011

Решение состоит в том, чтобы добавить класс «jstree-checked», это по умолчанию предварительно установит флажок

person dzm    schedule 28.09.2011

Следующий код может решить вашу проблему.

$('.tree').jstree("check_all");
person ProSardar    schedule 18.11.2014