ExtJS загрузить изображение в TreePanel - PullRequest
3 голосов
/ 13 июля 2009

я создал Ext.TreePanel, и у меня будет в узле изображение, в тексте узла у меня есть URL-адрес изображения, но я не могу загрузить его на странице, я вижу только текст такое возможность просмотра изображения?

это мой код

var root1 = new Tree.AsyncTreeNode({
    text: 'Legenda degli starti PAT',
    draggable:true, // disable root node dragging
    id:'source'
});

var tree1 = new Tree.TreePanel({
    renderTo : 'legend',
    animate:true, 
    loader: new Tree.TreeLoader({dataUrl:'legend.php'}),
    containerScroll: true,
    root: root1,
});

и это ответ на запрос TreePanel

[{"text":"comuni","id":"co","leaf":false,"cls":"folder","children":[{"text":"http:\/\/localhost\
/cgi-bin\/mapserv?map=\/home\/gis\/mapserver\/cartocomune_wms.map&SERVICE=wms&FORMAT=png&VERSION=1.1
.1&LAYER=comuni&REQUEST=GetLegendGraphic","id":"comuni","leaf":true,"cls":"file"}]},{"text":"idrografia"
,"id":"id","leaf":false,"cls":"folder","children":[{"text":"http:\/\/localhost\/cgi-bin\/mapserv
?map=\/home\/gis\/mapserver\/cartocomune_wms.map&SERVICE=wms&FORMAT=png&VERSION=1.1.1&LAYER=idrografia
&REQUEST=GetLegendGraphic","id":"idrografia","leaf":true,"cls":"file"}]},{"text":"viabilita","id":"via"
,"leaf":false,"cls":"folder","children":[{"text":"http:\/\/localhost\/cgi-bin\/mapserv?map=\/home
\/gis\/mapserver\/cartocomune_wms.map&SERVICE=wms&FORMAT=png&VERSION=1.1.1&LAYER=viabilita&REQUEST=GetLegendGraphic"
,"id":"viabilita","leaf":true,"cls":"file"}]},{"text":"uso_suolo","id":"uso","leaf":false,"cls":"folder"
,"children":[{"text":"http:\/\/localhost\/cgi-bin\/mapserv?map=\/home\/gis\/mapserver\/cartocomune_wms
.map&SERVICE=wms&FORMAT=png&VERSION=1.1.1&LAYER=uso_suolo&REQUEST=GetLegendGraphic","id":"uso_suolo"
,"leaf":true,"cls":"file"}]},{"text":"catasto","id":"cat","leaf":false,"cls":"folder","children":[{"text"
:"http:\/\/localhost\/cgi-bin\/mapserv?map=\/home\/gis\/mapserver\/cartocomune_wms.map&SERVICE=wms
&FORMAT=png&VERSION=1.1.1&LAYER=catasto&REQUEST=GetLegendGraphic","id":"catasto","leaf":true,"cls":"file"
}]}]

благодарственное-х Лука

Ответы [ 3 ]

1 голос
/ 22 июля 2009

Вам необходимо включить атрибут "iconCls" для узла в JSON, который ссылается на класс CSS, определяющий изображение, которое вы хотите показать для этого конкретного узла.

По документации API на extjs.com:

// указать свойство в конфиге для класса: ... iconCls: 'my-icon'

// класс css, который определяет фоновое изображение, которое будет использоваться в качестве изображения значка: .my-icon {background-image: url (../ images / my-icon.gif) 0 6 пикселей без повторения! важный; }

Итак, ваш JSON будет выглядеть так:

[{ "текст": "comuni", "идентификатор": "со", "лист": ложные "ЦБС": "папка", "дети": [{ "текст": "http://localhost\ /cgi-bin/mapserv?map=/home/gis/mapserver/cartocomune_wms.map&SERVICE=wms&FORMAT=png&VERSION=1.1 .1 & LAYER = comuni & REQUEST = GetLegendGraphic "," id ":" comuni "," leaf ": true," cls ":" file ", " iconCls ":" my-icon "}]}, { "текст": "idrografia" , "id": "id", "leaf": false, "cls": "folder", "iconCls": "my-icon "} ... и т. д. и т. д.}} ]

0 голосов
/ 19 марта 2010

Убедитесь, что ваш Ext.BLANK_IMAGE_URL правильно указывает на s.gif

0 голосов
/ 14 июля 2009

Ну, не понятно, в чем ваша проблема - вы видите заполнители изображения? Если это так, вам может потребоваться перепроверить, что Ext.BLANK_IMAGE_URL установлен правильно. Если вы пытаетесь загрузить пользовательские изображения, проверьте визуализированные узлы дерева в Firebug - правильно ли отображаются ваши теги изображений с правильными URL-адресами? Также проверьте вкладку «Сеть» в Firebug и посмотрите, нет ли у вас испорченных ссылок на изображения.

...