获取单击的JSON元素';使用ExtJS的s值

获取单击的JSON元素';使用ExtJS的s值,json,extjs,nodes,Json,Extjs,Nodes,我有一个JSON存储: var jsonstore = new Ext.data.ArrayStore({ fields: ['bla', 'blubb'], data: [ ['bla', 'blubb'], ['blabla', 'blublu'], ['blass', 'hallo'], ['bam', 'guckt'] ] }); 和一个extjs列表视图: .... ,{ xtype

我有一个JSON存储:

var jsonstore = new Ext.data.ArrayStore({
    fields: ['bla', 'blubb'],
    data: [ ['bla', 'blubb'],
            ['blabla', 'blublu'],
            ['blass', 'hallo'],
            ['bam', 'guckt'] ]
});
和一个extjs列表视图:

....
,{
       xtype: 'listview',
       name: 'abrufliste',
       store: jsonstore,
       id:"ladebereich",
       multiSelect: false,
       emptyText: 'nix da',
       reserveScrollOffset: true,
       columns: [ { header: 'Name',
                    width: .5,
                    dataIndex: 'NAME' } 
....
,{
   xtype: 'listview',
   name: 'abrufliste',
   store: jsonstore,
   id:"ladebereich",
   multiSelect: false,
   emptyText: 'nix da',
   reserveScrollOffset: true,

   listeners:
   {
       click: function(object, selectedIndex, node, event) {
           // Get the name corresponding to the selected row.
           var rowName = object.store.getAt(selectedIndex).get("Name");
       }
   },

   columns: [ { header: 'Name',
                width: .5,
                dataIndex: 'NAME' } 
和单击事件:

Ext.ComponentMgr.get('ladebereich').on("click",function (sthis,index,node,e ){ 
    alert("node:  "+node.childNodes[0].childNodes[0].innerHTML);});
我想获取单击的节点的值

我确实得到了它的价值

node.childNodes[0].childNodes[0].innerHTML
然而,这是一个糟糕的解决方案

我想从我的jsonstore中获取单击的元素, 有什么建议吗?

它与

Ext.ComponentMgr.get('ladebereich').on("click",function (sthis,index,node,e ){

    var rec = jsonstore.getAt(index);
    alert(rec.get("NAME"));
});

另一种方法是向listview添加侦听器,以响应listview上的任何单击事件:

....
,{
       xtype: 'listview',
       name: 'abrufliste',
       store: jsonstore,
       id:"ladebereich",
       multiSelect: false,
       emptyText: 'nix da',
       reserveScrollOffset: true,
       columns: [ { header: 'Name',
                    width: .5,
                    dataIndex: 'NAME' } 
....
,{
   xtype: 'listview',
   name: 'abrufliste',
   store: jsonstore,
   id:"ladebereich",
   multiSelect: false,
   emptyText: 'nix da',
   reserveScrollOffset: true,

   listeners:
   {
       click: function(object, selectedIndex, node, event) {
           // Get the name corresponding to the selected row.
           var rowName = object.store.getAt(selectedIndex).get("Name");
       }
   },

   columns: [ { header: 'Name',
                width: .5,
                dataIndex: 'NAME' }