我有一个显示字段如下
{
fieldLabel: 'Designation', name: 'designation', xtype: 'displayfield',
listeners: {
beforerender:
{
fn: function (v) {
// get value here
},
scope: this
}
}
}
我尝试使用
获取displayfield的值v.getValue(), v.el.getValue(), v.getEl().getValue()
但每次都显示未定义。
我也尝试将beforerender
监听器更改为render
。但仍未定义值id。
任何人都可以帮助我摆脱它。
答案 0 :(得分:0)
所以,据我了解 - 您依靠表单填充显示字段。
鉴于这种情况,该值在渲染后填充 - 因此在渲染过程中它将无法使用。
您可以通过创建自己的setValue
方法并输入断点来证明这一点。这将让您看到相对于渲染过程填充值的时间。
如果没有关于如何获取JSON对象的详细信息以及用于填充表单的时间,我无法为您提供更多帮助。
答案 1 :(得分:0)
假设您使用商店代理加载值,您可以收听商店的加载事件而不是视图的呈现事件,因为只有在呈现视图后才将商店数据加载到视图中完全。