ExtJS 3.3.1 - Как получить каждый элемент в массиве в Ext.Template - PullRequest
1 голос
/ 28 марта 2012

Я новичок в ExtJS и пытаюсь использовать этот пример в качестве основы для своего кода: grid_binding .

У меня есть файл perl * .pm, который обрабатывает мою функциональность сервера.

Я написал собственную функцию, которая вызывается при выборе строки, использует мой * .pm для получения информации и перезаписывает detailPanel следующим образом:

var getInfo = function(id){
var conn = new Ext.data.Connection();
conn.request({
    url: request_url,
    params: {
        _state: request_state,
        _action: 'get_id_info',
        id: id
    },
    callback: function(options, success, response){
        var responseHash = Ext.decode(response.responseText);
        var detailPanel = Ext.getCmp('detailPanel');
        myTpl.overwrite(detailPanel.body, responseHash);
    }

});
};

Мой responseHash содержит несколько ключейи значение некоторых из этих ключей является массивом.

В данный момент моя detailPanel выглядит так:

// define a template to use for the detail view
var myTplMarkup = [
    "values related to this key_name: {key_name}"
];
var myTpl = new Ext.Template(myTplMarkup);

Это выводит значения, связанные с этим ключом, разделенные запятыми в подробном представлении.

Теперь я хотел бы получить доступ к каждому из этих значений отдельно и включить его в ссылку (и представить эту ссылку в подробном представлении).

Как мне это сделать?

Спасибо !!!

1 Ответ

0 голосов
/ 28 марта 2012

Я изменил Ext.Template на Ext.XTemplate и использовал этот пример для доступа к каждому элементу в массиве и создания гиперссылки для него:

generate_hyperlink

Я нашел документацию Ext на XTemplate очень полезной.

так что теперь мой код выглядит так:

// define a template to use for the detail view
var myTpl = new Ext.XTemplate(
    '<p>item(s) related to this id:',
        '<tpl for="key_name">',
        '<p><a href="---url_template---{.}" target="_blank">{.}</a></p>',
        '</tpl></p>'
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...