Extjs从扩展的FormPanel获取字段值

时间:2011-09-21 14:58:51

标签: forms extjs

我的formPanel的提交按钮使用范围:这是因为它是一个扩展的formPanela和ext.getCmp(formid)不起作用。

在我的提交函数中,它使用this.getForm()。submit(....)成功运行。但是,当尝试获取字段值时,this.getForm()。getFields()不起作用,标记它不是函数。

按钮&处理函数嵌套在formPanel设置中。

有人能说明如何以这种方式获得价值吗?

提交功能:

{
    text: 'Submit',
    id: "submitBtn",                    
    handler: this.submit,
    scope: this                    
}
....

,submit : function(url, waitMsg) {
    //this.getForm.getFields()
    this.getForm().submit({
        url: url
        ,scope: this
        ,waitMsg: 'Please wait'
        ,success: this.onSuccess
        //,failure: this.onFailure

    });
}

2 个答案:

答案 0 :(得分:0)


submit : function(url, waitMsg) {
        //this.getForm.getFields() -- should work now
        this.getForm().submit({
            url: url
            ,scope: this
            ,waitMsg: 'Please wait'
            ,success: this.onSuccess
            //,failure: this.onFailure
        });
    }.createDelegate(this)

答案 1 :(得分:0)

我通过不使用提交操作但使用简单的Ext.Ajax.request解决了这个问题:

,submit : function() {
        var data = this.getForm().getValues();
        Ext.Ajax.request({
            url: '...',
            method: 'GET',
            timeout:180000,
            params: {
                param1: Ext.encode(this.getForm().getValues())
            }
            .
        })