我在这里有这么简单的问题,但找不到它......无论如何,下面你可以看到代码.这是面板内有物品.我想要的是改变文本字段的值,名称为'intIP',它在面板内部,即面板内部.我怎样才能做到这一点?我找到了关于表单的信息(.getForm方法,但面板没有这样的)
非常感谢提前
var resultsPanel = Ext.create('Ext.panel.Panel', {
title: title,
renderTo: document.body,
layout: {
type: 'vbox',
align: 'stretch',
},
items: [{
title: 'Details',
name: 'detPanel',
items: [{
name: 'intIP',
fieldLabel: 'internal IP',
xtype: 'textfield',
readOnly: true
}],
}]
});
Run Code Online (Sandbox Code Playgroud)
在ExtJS 4中,您应该能够使用Ext.Container.query()
方法,该方法在传递正确的选择器时将返回与选择器匹配的子组件数组.
resultsPanel.query('textfield[name="intIP"]')[0].setValue('New value')
Run Code Online (Sandbox Code Playgroud)
有关如何创建选择器的详细信息,请访问:http://localhost/ext-4.0.2/docs/index.html#/api/Ext.ComponentQuery
在ExtJS3:每个Ext.Container
具有find()
方法,该方法可以ginven的属性(姓名name
,xtype
,itemId
等等)和值('intP'
,'textfield'
,'fieldId'
).它将返回一个chlderen组件数组(在任何嵌套级别),其中property具有指示的值.如果在您的容器中只有一个字段有名称,'intP'
那么您可以使用:
resultsPanel.find('name','intP')[0].setValue('New value')
Run Code Online (Sandbox Code Playgroud)
在ExtJS3和ExtJS4中,如果您有更多具有相同名称的子组件,则使用其他唯一属性(如itemId
应该有帮助).
归档时间: |
|
查看次数: |
23798 次 |
最近记录: |