Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何像调用ajax时那样将变量传递给ajax成功函数?_Jquery_Ajax_Variables_Scope - Fatal编程技术网

Jquery 如何像调用ajax时那样将变量传递给ajax成功函数?

Jquery 如何像调用ajax时那样将变量传递给ajax成功函数?,jquery,ajax,variables,scope,Jquery,Ajax,Variables,Scope,这是我的ajax调用(基本上是标准的jQuery,但使用couchdb jQuery库,): 我希望console.log的输出是“一些东西”,而不是“东西的变化” 方法越多越好,因为我认为有些方法可能需要我不使用“enyo.bind()”,但也许我可以用这些方法完成相同的事情。您可以通过这样做“锚定”变量: (function(varname) { // code that relies on varname })(varname); 你可以使用一个函数 var create = f

这是我的ajax调用(基本上是标准的jQuery,但使用couchdb jQuery库,):

我希望console.log的输出是“一些东西”,而不是“东西的变化”

方法越多越好,因为我认为有些方法可能需要我不使用“enyo.bind()”,但也许我可以用这些方法完成相同的事情。

您可以通过这样做“锚定”变量:

(function(varname) {
    // code that relies on varname
})(varname);

你可以使用一个函数

var create = function (stuff) {
  $.couch.db("test_db").create({
    success: enyo.bind(this, function (data) {
      console.log(stuff);
    })
  });
};

create(stuff);
或者,将其等效为匿名函数

!function(stuff) {
  $.couch.db("test_db").create({
    success: enyo.bind(this, function (data) {
      console.log(stuff);
    })
  });
}(stuff);

var create = function (stuff) {
  $.couch.db("test_db").create({
    success: enyo.bind(this, function (data) {
      console.log(stuff);
    })
  });
};

create(stuff);
!function(stuff) {
  $.couch.db("test_db").create({
    success: enyo.bind(this, function (data) {
      console.log(stuff);
    })
  });
}(stuff);