2012-05-18 42 views
10

Tôi đang cố thêm các thành phần extjs vào bảng điều khiển tpl. Liệu có cách nào để chèn thành phần để TPL như thế nàyThành phần Extjs bên trong Ext.XTemplate trên EXTJS 4

Ext.create('Ext.panel.Panel',{ 
    renderTo: Ext.getBody(), 
    data: {}, 
    listeners:{ 
     afterrender:function(){ 
      var renderSelector = Ext.query('div.comment-add-textarea'); 
       for(var i in renderSelector){ 
        Ext.create('Ext.form.field.TextArea',{ 
         height:300, 
         renderTo:renderSelector[i] 
        }); 
       } 
     } 
    }, 
    tpl: Ext.create('Ext.XTemplate', 
     '<tpl for=".">', 
     '<div class="comment-add-textarea"></div>', 
     '</tpl>',{ 
      compiled:true 
     }) 
});​ 
+1

việc kiểm tra này đây http://www.sencha.com/forum/archive/index.php/t-114317. html –

+0

Ah tôi đã tìm thấy vấn đề của mình. nó hoạt động khi tôi thay đổi sự kiện sau để làm mới sự kiện – XenoN

Trả lời

11

Hãy thử

Ext.create('Ext.panel.Panel', { 
    renderTo: Ext.getBody(), 
    data: {}, 
    listeners: { 
     refresh: function() { 
      var renderSelector = Ext.query('div.comment-add-textarea'); 
      for (var i in renderSelector) { 
       Ext.create('Ext.form.field.TextArea', { 
        height: 300, 
        renderTo: renderSelector[i] 
       }); 
      } 
     } 
    }, 
    tpl: Ext.create('Ext.XTemplate', 
     '<tpl for=".">', 
     '<div class="comment-add-textarea"></div>', 
     '</tpl>', { 
      compiled: true 
    }) 
}); 
Các vấn đề liên quan