0

フォーラム形式の投稿のリストがあります。今は、ユーザーのアバター画像をクリックすると、ストア投稿のposterIDプロパティにアクセスできるようにしたいと考えています。セレクトリスナーを画像に添付しましたが、画像の親ストアにアクセスする方法がわかりません。煎茶のドキュメントを調べてみましたが、検索に失敗しました。

store: 'topicStore',
itemTpl:
    '<div class="post">' +
        '<div class="header">' +
            '<img id="avatar" src="{avatar}" width=48 height=48>' +
            '<h2>{displayName}</h2>' +
            '<div class="date">on {postDate:date("m/d/Y")}</div>' +
        '</div>' +
        '<div class="body">' +
            '{message}' +
        '</div>' +
        '<tpl if="signature">' +
            '<hr />' +

            '<div class="signature">' +
            '{signature}' +
            '</div>' +
        '</tpl>' +
        '</div>',
    listeners: {
      select: function() { return false;},
        tap: {
            fn: function(event, el, record){
                tempElement = el.src;
                if (el.id != 'avatar'){
                    tempElement = tempElement.replace('_th.jpg', '_mid.jpg');
                    var logo = Ext.create( 'Ext.Img', {
                        src: tempElement,
                        id: 'logo',
                        mode: 'element'
                    });
                    app.fireEvent('forum-onimgview',logo);
                }
                else if (el.id == 'avatar'){
                    console.log(record);
                }
            },
            element: 'element',
            delegate: 'img'
        }
    }

選択したアイテムの親ストアを取得する方法を知っている人はいますか?リスナーに返されるのは、image要素とdom要素だけです。前もって感謝します!

4

1 に答える 1

1

itemTap リスナーを使用してみてください。リストへの参照が得られます。

私はこのように使用します:

listeners: {
        itemtap: function (list, index, element, record)
        {
            /* Put your logic here*/
        }
}

詳細はこちら: http://docs.sencha.com/touch/2-1/#!/api/Ext.dataview.DataView-event-itemtap

于 2012-12-17T11:12:29.483 に答える