我试图改变ExtJS中进度条的值,
我像这样渲染进度条:
var simple = new Ext.FormPanel({
labelWidth: 75, // label settings here cascade unless overridden
url:'save-form.php',
frame:true,
title: 'myAPI',
bodyStyle:'padding:5px 5px 0',
width: 350,
defaults: {width: 230},
defaultType: 'textarea',
items: [{
fieldLabel: 'Record ',
name: 'first',
id: 'record1',
allowBlank:false
},{
fieldLabel: 'Last Name',
name: 'last'
},{
fieldLabel: 'Company',
name: 'company'
}, {
xtype: 'dataview',
name: 'email',
vtype:'email'
},{
xtype: 'progress',
name: 'mybar',
id: 'mybar',
value: bar
}
],
buttons: [{
text: 'Start',
handler: clicked
},{
text: 'Cancel'
}]
});
simple.render(document.body);
我正在尝试像这样更新进度条:
var mybar = Ext.get('mybar').updateProgress(bar);
但我在Chrome中得到这个:
未捕获的TypeError:对象[object Object]没有方法'updateProgress'
谢谢!
答案 0 :(得分:4)
http://dev.sencha.com/deploy/dev/docs/?class=Ext
根据文件:
get(混合el):元素 检索Ext.Element对象。此方法不检索组件。此方法检索Ext.Element对象... 检索Ext.Element对象。
此方法不检索组件。此方法检索封装DOM元素的Ext.Element对象。要按ID检索Component,请使用Ext.ComponentMgr.get。
使用简单缓存来始终返回相同的对象。如果通过AJAX或DOM使用相同的id重新创建对象,则自动修复。
-
所以,只需使用Ext.ComponentMgr.get('mybar')。updateProgress
此外,updateProgress函数定义如下:
updateProgress([Float value],[String text],[Boolean animate]):Ext.ProgressBar