Данные шаблона Sencha Touch Access - PullRequest
3 голосов
/ 28 января 2011

Я создал шаблон на основе таблицы, чтобы я мог почувствовать сетку.У меня вопрос, как я могу получить всплывающее предупреждение (с информацией о тд), когда я нажимаю на строку таблицы.

Вот мой файл getUserList.js

    Ext.regModel("User", {
            fields: [
                "id",
                "name",
                "username",
                "password",
                "email",
                "phone"
            ]
    });

    var myStore = new Ext.data.Store({
        model: 'User',
        proxy: {
            type: 'ajax',
            url : '../sencha/php/getUserList.php',
            reader: {
                type: 'json',
                root: 'results'
            }
        },
        autoLoad: true
    }); 


    var tpl = new Ext.XTemplate(//'<h2>test information</h2>'
    '<table id="userTable"',
        '<tpl for=".">',

                '<tr>',
                    '<td class="x-view-over">',
                        '<span class="thumb-wrap">{id}</span>',
                    '</td>',
                    '<td class="x-view-over">',
                        '<span class="thumb-wrap"><a onclick="alert(tpl.name)">{name}</a></span>',
                    '</td>',
                    '<td>',
                        '{username}',
                    '</td>',
                    '<td>',
                        '{password}',
                    '</td>',
                    '<td>',
                        '{email}',
                    '</td>',
                    '<td>',
                        '{phone}',
                    '</td>',
                '</tr>',
        '</tpl>',
    '</table>',
        '<div class="x-clear"></div>'
    );

    var panel = new Ext.extend(Ext.Panel,{
        id:'images-view',
        frame:true,
        //width:535,
        autoHeight:true,
        collapsible:true,
        title:'Simple DataView',
        initComponent: function() {
            panel.superclass.initComponent.call(this);
        },

        items: new Ext.DataView({
            store: myStore,
            tpl: tpl,
            autoHeight:true,
            multiSelect: true,
            overItemCls:'x-view-over',
            itemSelector:'tr',
            emptyText: 'No images to display'
        })
    });

      Ext.reg('userPanel', panel);

Спасибо за любой совет, который вы можете дать.

1 Ответ

5 голосов
/ 31 января 2011

Хорошо, никто не помог мне, и я наконец понял это. Вот как я смог получить идентификатор строки в моем шаблоне:

         var newDV = new Ext.DataView({
            store: myStore,
            tpl: tpl,
            autoHeight:true,
            //multiSelect: true,
            //overItemCls:'x-view-over',
            itemSelector:'tr',
             listeners: {
                itemtap: function(dv, idx, itm, e) {
                    alert(dv.getStore().getAt(idx).getId());
                }
            }

        })
...