Sencha nestedList getActiveItem()

时间:2011-12-27 11:06:01

标签: sencha-touch extjs nested-lists sencha-touch-2

我正在使用此模型:

Ext.regModel('ListItem', {
    fields: [
        {name: 'id', type: 'string'},
        {name: 'text', type: 'string'},
        {name: 'number', type: 'string'}
    ]
});

nestedList是:

var nestedList = new Ext.NestedList({
            fullscreen: true,
            title: ivrData.text,
            store: NestedListDemo.music_store,
            getDetailCard: function(item, parent) {
                alert(item.attributes.record.data.number);
            }
        });

我想在点击按钮时获得 activeItem .number 属性。

handler : function(btn, evt) {
        var temp = nestedList.getActiveItem();
        alert(temp.number);
        alert(temp.attributes.record.data.number);
}

我能够通过alert(item.attributes.record.data.number);在leafnode上获取.number属性,但是在尝试获取temp的.number属性时出现这些错误:

alert(temp.number);打印 - >的未定义

alert(temp.attributes.record.data.number);会出错 - > “ TypeError:表达式'temp.attributes'[未定义]的结果不是对象

1 个答案:

答案 0 :(得分:0)

使用以下代码获取嵌套列表的activenode的所有属性:

nestedList.on('itemtap', function(subList, subIdx, item, e, detailCard) {
    alert(subList.getRecord(item).get('id'));
    alert(subList.getRecord(item).get('name'));
    alert(subList.getRecord(item).get('number'));
});

我将这些值存储在局部变量中。