0

我试图获得这样的存储价值:

 itemtap : function(list, index, target, record) {

      Ext.getStore("nameStore").load();
      console.dir("TEST->"+record.get('id'));
      console.dir("TEST->"+record.get('address'));

}

在这里,当 itemtap 时,我无法获得 id。我也试试这个:

  var store= Ext.getStore('nameStore');
  console.dir("TEST->"+store.get('id'));
  console.dir("TEST->"+store.get('address'));

但无法获取数据。为什么这个?

这两种类型的存储值访问有什么区别?

我在 div 中添加了 onclick,itemtap 工作正常,但在 Iphone 中它不起作用?为什么这个?sencha 中是否存在任何替代方案,适用于 android Iphone 和其他设备。如何在 itemap 中获取价值,从显示在商店中的 div 中获取。

编辑:

 itemtap :function(list, index, target, record) {
console.log("Clicked---"+record.get('cat_id'));
}

实际上,我没有得到上面的代码。

我正在尝试这个,并获得价值

console.log("Clicked--"+record.data.data[index].cat_id);

始终获取第一个值,因为索引值始终为 0,每个类别都被挖掘。所以,在这里我想获取点击类别的索引。

工作正常,如果我这样做:

{    
          xtype: 'list', 
          itemId: 'catList',
          scrollable: false,

    data: [
    { name: 'A', cat_id: 1},
    { name: 'B', cat_id: 2},
    { name: 'C', cat_id: 3},
    { name: 'D', cat_id: 4},
    { name: 'E', cat_id: 5},


    ],
    loadingText: "Loading Words...",
    emptyText: '<div>{message}</div>',
    autoLoad:true,
    itemTpl:[
    '<tpl for=".">',
          '<span >{name}</span> ',             
      '</tpl>',
    ] 
  },
4

1 回答 1

1

为什么要在itemTap回调中“重新加载”商店?它应该已经加载并且不需要再次加载()。

即使您想更新存储,您也应该等待 load() 完成,然后再执行 record.get()。记住load()是异步的。

第二个块永远不会起作用,因为get()是一种记录方法,您将其执行到存储区。

itemtap : function(list, index, target, record) {
      console.dir("TEST->" + record.get('id'));
      console.dir("TEST->" + record.get('address'));
}
于 2013-08-13T07:47:44.257 回答