在查询中使用for循环显示模式弹出窗口

时间:2014-01-09 04:44:55

标签: javascript jquery

我有一个要求我希望显示基于for的模态弹出窗口      使用jquery循环我尝试使用以下查询。在这里,我想要显示模态      弹出基于标志值。例如,将显示标志值3然后弹出窗口      当我们再次点击关闭时,它将显示最多3次。但以下      代码只会显示一次。

<script type="text/javascript> 
  for(var i=0;i<flag;i++){ 
     jQuery(function ($){   
        $('#basic-modal-content').modal();
     });
  }
</script> 

请给我一个解决这个问题的建议!

1 个答案:

答案 0 :(得分:1)

我不会用循环来做,因为它是异步任务。我会这样做:

var flag = 3;
(function openModal(times){
    if(times <= 0) return;  //End
    $('#basic-modal-content').modal({
      'close': function(){         //Assuming this is the syntax for close callback
           openModal(times-1);
       }
    });    
})(flag);

另一种方式,更长但可能更容易理解:

var flag = 3;
function openModal(){
   if(flag > 0){
     $('#basic-modal-content').modal({
       'close': function(){         //Assuming this is the syntax for close callback
           flag--;           
           openModal();           
        }
      });    
   }else{
       alert("Finished closing all the times needed!");
   }
};
openModal();

希望这会有所帮助。干杯