ExtJs确定表单加载的可见性

时间:2013-02-27 16:07:47

标签: extjs extjs3

在Extjs 3.4中,我有一个相当大的表单,通过someForm.getForm().load({url: someplace, etc})从ajax调用填充,它运行完美。我似乎无法解决的问题是,有几个组合框和复选框可以确定另一个字段是否可见allowBlank

根据类似问题的答案,我尝试在表单上使用actioncomplete事件,但字段在此时没有值。我也尝试使用success来电的load()事件,但也遇到同样的问题。

是否有其他方法可以从form.load()电话中获取此功能?

编辑 - 这是我的load电话:

var panel = Ext.getCmp('someFormID');
panel.getForm().load({
    method: 'GET',
    url: 'ajax_get_request.aspx?id=' + id,
    success: function (form) {
        // This will error: object is null or undefined
        alert(form.findField('fieldID').getValue());
    }
});

我对Extjs比较陌生,所以也许我只是错过了一些东西......

1 个答案:

答案 0 :(得分:1)

不确定为什么挂钩success的{​​{1}}回调失败了,但我可以提出另一种方法。

我通常使用显式Ext.form.BasicForm.load()调用将数据加载到Ext.Ajax.request()。然后在Ext.data.Record的{​​{1}}回调中,我使用request()将数据加载到表单中。如果您需要对加载的值执行操作,则可以在同一回调中执行此操作。

我是这样做的,因为我喜欢将服务器的原始值存储在一边。