2016-11-17 6 views
-1

Как получить запись на selection change при использовании Ext.DataView?EXTJS 3.4 КАК ПОЛУЧИТЬ ЗАПИСЬ DATAVIEW ON выбор change

Я хотел бы получить значение IdPrd в функции eventchange.

var tpl_ram = new Ext.XTemplate(
    '<ul>', 
     '<tpl for=".">', 
      '<li class="phone">', 
       '<img width="64" height="64" src="data/catalogo/ramos/imagenes/{IdRm}/{IdRm}.jpg" />', 
       '<strong>{NomRm}</strong>', 
       '<span>{DescRm}</span>', 
      '</li>', 
     '</tpl>', 
    '</ul>'); 

var ramos_dw = new Ext.DataView({ 
    tpl: tpl_ram, 
    store: ramos_productos, 
    id: 'ramos_dw', 
    itemSelector: 'li.phone', 
    overClass: 'phone-hover', 
    singleSelect: true, 
    autoScroll: true, 
    autoHeight: true, 
    emptyText: 'SIN RESULTADOS QUE MOSTRAR', 
    listeners: { 
     'click': function() {}, 
     selectionchange: { 
      fn: function(dv, nodes) { 
       //i want on selection get value 'IdPrd' 
       var record = nodes[0]; 
       console.log("advert id - " + record.get('IdPrd')) 
      } 
     } 
    } 
}); 

ответ

0

Непонятно, как выглядит ваша модель из вашего магазина. Но решением было бы сначала получить объект данных.

Так что код будет:

var recordData = nodes[0].getData(); 
// keep in mind that user can select more than 1 node --> nodes[0] 
console.log("advert id - " + recordData['IdPrd']) 

Вы также можете просто положить debugger; в вашу SelectionChange функции слушателя и исследовать, как именно узлы объекта, который вы получите в ваш конкретный пример выглядит.

Смежные вопросы