Как передать пользовательский аргумент через функцию обратного вызова submit в ExtJS - PullRequest
2 голосов
/ 26 апреля 2011

Это моя функция обратного вызова с пользовательским параметром.

function successCallback(form, action, customParam){
    if(customParam == '1'){
        // do xxx
    }
    else if(customParam == '2'){
        // do yyy
    }
    else {
        // do zzz
    }
}

Есть ли у вас идеи передать пользовательское значение с помощью конфигурации отправки ExtJS?

myForm.getForm().submit({
    url: 'http://mysite.com/target',
    method: 'POST',
    success: successCallback(9), // ??
});

Спасибо.

Ответы [ 2 ]

0 голосов
/ 26 апреля 2011

Для вашего случая, просто используйте это:

...
success : successCallback
...

Функция successCallback будет вызываться со всеми этими параметрами.

В будущем используйте createDelegate для функций обратного вызова с параметрами и областью действия.

...
success : function(){
    successCallback.createDelegate(param1, param2)();
}
...
0 голосов
/ 26 апреля 2011

В целом: http://www.terrainformatica.com/2006/08/delegates-in-javascript-now-with-parameters/

, в частности:

  ...
  success: function() { successCallback(1,2,3); } , 
  ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...