ajax回调函数,success中执行settimeout不生效

在执行完ajax函数后,需要停留5秒,然后再递归这个ajax函数,用settimeout没有停留

rechargeResultPoll: function(orderId, channelId) {
            var formData={
              id:orderId,
              channelid:channelId
            }
            $.ajax({
                type: 'POST',
                url: me._options.baseURL + 'account',
                data: formData,
                success: function(res) {

                        var json = res;
                            if (json.rechargeStatus * 1 === 0) {
                             setTimeout(rechargeResultPoll(orderId, channelId),5000);  
                            } else if (json.rechargeStatus * 1 === 1) {
                               alert('成功')
                              } 
                },
                
            });
        }
阅读 7.1k
3 个回答

题主贴上代码了,我更新一下答案:

题主,你把setTimeout那一行换成:

var me = this;
setTimeout(function() {
    me.rechargeResultPoll(orderId, channelId);
}, 5000);

应该没问题。

如果不行,就把函数里的me.去掉再试试。

代码拿上来看一看

支持的,是你代码有问题。absolutely

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进