Мне нужно иметь jstree, который можно настроить из базы данных, и у меня проблемы со значками (. Это просто еще один столбец в моем запросе, содержащий имя значка ). Проблема в том, что я не могу отобразить это правильно.
Я создаю этот список, добавляя атрибут background-image:url('path');
, чтобы указать изображение в теге <a>
, но я продолжаю отображать значок папки (изображение не повторяется, но я включаю его для более легкой визуализации проблемы ).
Как я могу заставить jstree не отображать эту папку? Кажется, что jstree просто строит одно изображение для всего дерева (или, по крайней мере, для каждого уровня ). Я не знаю, как это изменить.
Это html для изображения выше.
<ul style=""><li id="1227_1226" class="leaf jstree-leaf">
<ins class="jstree-icon"> </ins>
<a href="/arco/formatos/Estrategia desarrollo.doc" style="background-image:url('/arco/Menu/images/web.png;');" class="nothing"><ins class="jstree-icon"> </ins>
Instructivo desarrollo
</a>
</li>
<li id="1227_1228" class="leaf jstree-leaf"><ins class="jstree-icon"> </ins>
<a href="/arco/formatos/FO-0001 FormatoMantenimientoPlanificado-V1.doc" style="background-image:url('/arco/Menu/images/web.png;');" class="nothing"><ins class="jstree-icon"> </ins>
Mantenimiento planificado
</a>
</li>
<li id="1227_1229" class="leaf"><ins class="jstree-icon"> </ins>
<a href="/arco/formatos/FO-0002 FormatoAnalisisRequisitos.doc" style="background-image:url('/arco/Menu/images/web.png;');" class="nothing"><ins class="jstree-icon"> </ins>
Análisis de requisitos
</a>
</li>
<li id="1227_1230" class="leaf jstree-leaf"><ins class="jstree-icon"> </ins>
<a href="/arco/formatos/FO-0003 FormatoInstructivoInstalacion.doc" style="background-image:url('/arco/Menu/images/web.png;');" class="nothing"><ins class="jstree-icon"> </ins>
Instructivo de instalación
</a>
</li>
<li id="1227_1231" class="leaf jstree-leaf"><ins class="jstree-icon"> </ins>
<a href="/arco/formatos/FO-0004 FormatoControlCalidadConstruccion.doc" style="background-image:url('/arco/Menu/images/web.png;');" class="nothing"><ins class="jstree-icon"> </ins>
Control de calidad
</a>
</li>
<li id="1227_1232" class="leaf jstree-leaf"><ins class="jstree-icon"> </ins>
<a href="/arco/formatos/FO-0005 FormatoPruebasUsuario.doc" style="background-image:url('/arco/Menu/images/web.png;');" class="nothing"><ins class="jstree-icon"> </ins>
Pruebas de usuario
</a>
</li>
<li id="1227_1233" class="leaf jstree-leaf"><ins class="jstree-icon"> </ins>
<a href="/arco/formatos/FO-0007 FormatoActas-V1.doc" style="background-image:url('/arco/Menu/images/web.png;');" class="nothing"><ins class="jstree-icon"> </ins>
Actas
</a>
</li>
<li id="1227_1263" class="leaf jstree-last jstree-leaf"><ins class="jstree-icon"> </ins>
<a href="/arco/formatos/FO-0006 FormatoSolicitudSoporte V1.doc" style="background-image:url('/arco/Menu/images/web.png;');" class="nothing"><ins class="jstree-icon"> </ins>
Solicitud de soporte
</a>
</li></ul>
Вот как я строю дерево; вызовы ajax получают список html:
$(function () {
$("#arbolMenu").jstree({
"plugins" : [ "themes", "html_data", "cookies"],
"html_data" : {
"ajax" : {
"url" : "/arco/CtrlMenu",
"data" : function (n) {
return { id : n.attr ? n.attr("id") : -1 };
}
}
}
});
}).delegate(".jstree-open>a", "click.jstree", function(event){
$.jstree._reference(this).close_node(this, false, false);
}).delegate(".jstree-closed>a", "click.jstree", function(event){
$.jstree._reference(this).open_node(this, false, false);
});