Sencha Touch 2:更改itemTpl中HTML按钮的文本

时间:2014-02-18 05:31:53

标签: javascript html extjs sencha-touch sencha-touch-2

在我的DataView的itemTpl中,我有以下一行:

<div class="btn" id="colorbtn" uniqueId="{id}">{[this.getColorButton(values)]}</div>

在我的听众中,我有以下内容:

listeners : {
element  : 'element',
delegate : '#colorbtn',
tap      : function(item, idx, el, evt) {
// gets the item you tapped
   btnId = el.getAttribute('uniqueId');
   //Ext.getCmp('colorbtn').setText('New Value');
    alert("hello "+btnId );
}
}

正如您所看到的,我正在尝试使用Ext.getCmp获取按钮并设置新文本,但这会引发错误Uncaught TypeError: Cannot read property 'setText' of undefined。有没有办法实现我追求的目标?

1 个答案:

答案 0 :(得分:1)

使用Ext.get()包装事件中返回的元素变量,这将检索Ext.dom.Element对象。然后,您可以使用Ext.dom.Element的可用方法。

示例:

 Ext.get(el).setHtml('New Value') ;

注意:如果通过AJAX或DOM使用相同的ID重新创建对象,则自动修复。