1
我使用Sencha Touch 2,我有一個按鈕聲明,在事件點擊我想改變它的文本屬性。如何以編程方式更改按鈕的Text屬性?
這是我的代碼,不工作..任何想法如何解決它?
var accessibilityButton = {
id: 'accessibilityButton',
xtype: 'button',
ui: 'custom-btn-confirm',
maxWidth: '360px',
centered: true,
flex: 1,
scope: this,
style: 'color: #ffffff',
text: 'Larger Text',
handler: function changeStyle() {
// Swap the CSS for Accessibility
var i, a, url, btn;
btn = document.getElementById('accessibilityButton');
for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
if(a.getAttribute("rel").indexOf("style") != -1) {
url = a.href;
if(url.lastIndexOf('app.css') !== -1) {
a.href = 'resources/css/app-accesibility.css';
btn.innerHTML = 'Default Text';
}
else {
a.href = 'resources/css/app.css';
btn.innerHTML = 'Larger Text';
}
}
}
}
};
我已經嘗試過不起作用。它說對象沒有方法...任何想法? – GibboK
哦,我沒有注意到你將按鈕上的範圍設置爲別的東西。你可以擺脫範圍或嘗試: Ext.getCmp('accessibilityButton')。setText('Default Text'); – chinabuffet
或者,您更容易將處理函數的簽名更改爲changeStyle(btn),然後執行btn.setText('Default Text'); –