匿名函数,添加参数

Mar*_*osé 1 javascript ajax prototypejs

我在我的Ajax.Request中使用我的jsp.(原型)

不知怎的,我可以在匿名函数onComplete中传递额外的参数?

例如,

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

我想使用参数e而且还要使用其他参数.

我不想使用全局变量.

这个想法是运行多个并发请求,并且当每个请求完成使用我放置的元素完成某些操作时.

bob*_*obo 5

通常,您不能将"参数"添加到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' ) ;
  }
});
Run Code Online (Sandbox Code Playgroud)

请注意,我已将参数作为对象文字传递并附加到onSuccess事件而不是onComplete事件.