анонимная функция, добавить параметры - PullRequest
1 голос
/ 11 июля 2010

Я использую в своем Ajax. Запросить мой jsp. (Прототип)

Как-то я могу передать дополнительные параметры в анонимной функции onComplete?

Например,

function save() {
    var pars = "param1=date";
    new Ajax.Request('algo.ctr', {
        parameters: pars,
        onComplete: f,
    });
}
var f = function (e) {
    alert(e.status);
}

Я хочу использовать параметр e, но также и другие.

Я не хочу использовать глобальные переменные.

Идея состоит в том, чтобы запустить несколько одновременных запросов, и когда каждый из них завершает выполнение чего-либо с элементом, который я поместил.

1 Ответ

5 голосов
/ 11 июля 2010

Как правило, вы не можете «добавить параметры» в собственную сигнатуру функции Prototype.Но вы можете сделать что-то вроде этого:

function mySuccessFunction( a, b, c ) {
  alert( "Success!" + a + b + c ) ;
}

new Ajax.Request(url, {
  method: 'get',

  parameters: {company: 'example', limit: 12} // use an object literal
  // for parameters, not a query string

  onSuccess: function( transport ) {
    mySuccessFunction( transport, 'param1', 'param2' ) ;
  }
});

Обратите внимание, здесь я передал параметры как литерал объекта и прикреплен к событию onSuccess вместо события onComplete.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...