2017-02-14 66 views
0

我试图使点击事件发生X次数取决于某些数学结果。有多行按钮,我需要按下按钮,所以我已经看到了它,你可以看到。但是,我该如何使$(obj).click();被解雇numClickVar次?发生点击事件X次数量

$("#bookOutAll2").on("click", function (e) { 
    $(".ControlButtonPLUS").each(function(i, obj) { 
     var data = $(this).closest("tr").find(".bookedOutText").text(); 
     var data2 = $(this).closest("tr").find(".requestedQty").text(); 
     var numClickVar = data2 - data ; 

     setTimeout(function() { 
      if (numClickVar > 0) { 
       // **** needs to happen numClickVar of times ***** 
       $(obj).click(); 
      } 
     }, 450 * i); 
    }); 
}) 

任何想法?

+0

根据什么逻辑是做我建议你计算基于'numClickVar'结果和更新UI一次,而不是创建N个虚拟请求 –

回答

0

这就是迭代什么

for (var i=0; i<numClickVar; i++) { 
    $(obj).click(); 
} 

您创建执行n次的循环,并把里面的代码。

如果你想超时去与,你可以使用递归函数调用

(function fn(i) { 
    setTimeout(function() { 
     $(obj).click();    
     if (i < numClickVar) fn(++i); 
    },450); 
})(0); 
+0

谢谢,非常感激,效果很好 –