2013-07-10 27 views
0

更新數據I有一個模型如下:煎茶觸摸2:排序/自動分組火的時候在商店

Ext.define('MyProject.model.Contact', { 
extend: 'Ext.data.Model', 
config: { 
    fields: [ 
     { 
      name: 'ID' 
     }, 
     { 
      name: 'Image' 
     }, 
     { 
      name: 'Name' 
     }, 
     { 
      name: 'IsSelected' 
     } 
    ] 
} 

});

我有一個店使用model.This店裏有如下一組函數:

 groupFn: function(item) { 
      if (item.get('Name')) { 
       return item.get('Name')[0].toUpperCase(); 
      } else { 
       return ' '; 
      } 
     } 

我展示這家店在列表視圖,列表視圖,如下模板:

<img src="{Image}" height="45" width="45"> 
<span style="">{Name}</span> 
<span style="float:right; padding-right: 40px;"> 
    <input type="checkbox" <tpl if="IsSelected === true">checked="checked"</tpl>/> 
</span> 

顯示在列表中,如下圖: The listview show data

當用戶點擊列表中的一個項目,我作爲更新下面的「IsSelected」字段:

onListItemTap: function(dataview, index, target, record, e, eOpts) { 
    var isSelected = record.getData().IsSelected; 
    if (isSelected === true) { 
     record.set("IsSelected", false); 
    } else { 
     record.set("IsSelected", true); 
    } 
} 

事件觸發後,列表會自動更新。請看下圖: The listview after data updated

所有檢查的項目被移到一個組的末尾。 有人知道嗎?請告訴我爲什麼以及如何解決這個問題。謝謝。

+0

可以運行[分頁](http://docs.sencha.com/touch/2.2.1/#!/api/Ext.data.Store-method-sort)手動? – bwags

回答

1

添加分揀到您的商店:

sorters : [{ 
     property : 'Name', 
     direction : 'Asc' 
    }] 

這裏是一個working fiddle

對不起......那些小提琴鏈接永遠不能正常工作 - 這裏是一個working example工作示例。

讓我知道如果這不起作用,我可以得到你我下載的代碼。

祝你好運,布拉德

+0

非常感謝布拉德。小提琴正在工作,但我的不是。您能否將您的下載代碼發送給我?等待你:) –

+0

它現在工作。我有一個錯誤。 :) 非常感謝。 –

+0

如果它工作,你會標記答案是正確的嗎? – bwags