微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript-如何将参数传递给jQuery ajax请求的回调?

我需要将额外的变量传递给jQuery,ajax回调函数.

例如,给定:

while (K--)
{
    $.get
    (
        "BaseURL" + K,
        function (zData, K) {ProcessData (zData, K); }
    );
}

function ProcessData (zData, K)
{
    console.log (K);
}

ProcessData()每次都会报告0(或K的最后一个值是).

如何确保ProcessData()用正确的K值触发或可以获取正确的K?

没有将$get()包装在函数中的方法吗?

解决方法:

否.由于闭包的工作方式,所有内部函数都将在同一个K变量(最终等于0)上关闭.您需要在某处附加一个间接级别来创建单独的作用域.例如.:

while (K--)
{
    (function(K)
    {
      $.get
      (
          "BaseURL" + K,
          function (zData, status) {ProcessData (zData, K); }
      );
    })(K);
}

另外,不应将成功函数的第二个参数称为K.该参数将获得状态,然后将其阴影在所需的K上.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐