[Extjs 최적화 2] Form 양식 제출 공통

1498 단어 ExtJs
/**

 *  

 */

function $postForm(a) {

    if (a.formPanel.getForm().isValid()) {

        var b = a.scope ? a.scope: this;

        a.formPanel.getForm().submit({

            scope: b,

            url: a.url,

            method: "post",

            params: a.params,

            waitMsg: " ...",

            success: function(c, d) {

                Ext.ux.Toast.msg(" ", " !");

                if (a.callback) {

                    a.callback.call(b, c, d);

                }

            },

            failure: function(c, d) {

                Ext.MessageBox.show({

                    title: " ",

                    msg: " , !",

                    buttons: Ext.MessageBox.OK,

                    icon: "ext-mb-error"

                });

                if (a.callback) {

                    a.callback.call(b);

                }

            }

        });

    }

}

수정 코드를 사용하려면 13줄 코드만 필요합니다. 원시적으로 25-30줄 코드가 필요합니다. 예:
 
	saveRecord: function() {

	    $postForm({

	        formPanel:this.formPanel,

	        scope:this,

	        url: __ctxPath + "/basedata/saveStudentDepartment.action",

	        params:{},

	        callback: function(d, f) {

				var e = Ext.getCmp("StudentDepartmentGrid");

				if (e != null) {

					e.getStore().reload();

				}

				b.close();

            }

	    });

 

좋은 웹페이지 즐겨찾기