获取DisplayField beforeRender的值

时间:2016-04-07 07:34:09

标签: extjs extjs6 displayfield

我有一个显示字段如下

 {
      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。

任何人都可以帮助我摆脱它。

2 个答案:

答案 0 :(得分:0)

所以,据我了解 - 您依靠表单填充显示字段。

鉴于这种情况,该值在渲染后填充 - 因此在渲染过程中它将无法使用。

您可以通过创建自己的setValue方法并输入断点来证明这一点。这将让您看到相对于渲染过程填充值的时间。

如果没有关于如何获取JSON对象的详细信息以及用于填充表单的时间,我无法为您提供更多帮助。

答案 1 :(得分:0)

假设您使用商店代理加载值,您可以收听商店的加载事件而不是视图的呈现事件,因为只有在呈现视图后才将商店数据加载到视图中完全。