更新组合框tpl

时间:2015-07-01 09:32:23

标签: javascript extjs extjs5

如何更新组合框的tpl?商店会动态变化,因此tpl也应该更新。

tpl.overwrite不起作用。

this.getView( ).supplierCombo.setStore( suppliersStore );
var i = 1;
suppliersStore.each( function( record ) {
  if ( record.get( 'count' ) != 0 ) {
    i++;
  }
} );
var tpl =  Ext.create( 'Ext.XTemplate',
  '<tpl for=".">',
    '<tpl if="xindex == 1">',
      '<div style="font-weight: bold; border-bottom: 1px solid #ddd; padding: 4px">'+SUSi.I18n.t( "cap_last_used" )+'</div>',
    '</tpl>',
    '<tpl if="xindex == '+i+'">',
      '<hr />',
    '</tpl>',
    '<div data-qtip="{lfr_adrz1} | {lfr_plz} {lfr_port}" class="x-boundlist-item">{text}</div>',
  '</tpl>'
)
tpl.overwrite( this.getView( ).supplierCombo, suppliersStore );

1 个答案:

答案 0 :(得分:0)

因为Combo的项目模板是配置属性,所以您只需使用combo.setTpl(myNewTemplate)更改它。我真的不明白你想要做什么(计算记录然后插入一小时。我不认为应该有必要更改模板