Javascript 而jQuery中的循环条件已更改

Javascript 而jQuery中的循环条件已更改,javascript,jquery,Javascript,Jquery,我想要更改的while循环条件是通过单击一个按钮来完成的,而第二个按钮继续循环并添加到计数器。问题是代码不会等待jQuery加载,因此会创建一个无限循环。我无法使用setInterval(),因为该代码还包括代码中其他地方使用的变量计数器 var condition = true; while(condition === true) { $('#modal').modal(); $('#modalButton1').on('click', function() {

我想要更改的while循环条件是通过单击一个按钮来完成的,而第二个按钮继续循环并添加到计数器。问题是代码不会等待jQuery加载,因此会创建一个无限循环。我无法使用setInterval(),因为该代码还包括代码中其他地方使用的变量计数器

var condition = true;
while(condition === true) {
    $('#modal').modal();
    $('#modalButton1').on('click', function() {
        variableCounter++;
    });
    $('#modalButton2').on('click', function() {
        condition = false;
    });
}

您正在
while
循环中连续分配
单击事件处理程序。相反,您应该在document ready部分定义一次事件处理程序,然后将所需的功能(即单击按钮2时结束模式对话框)放入这些单击事件的处理程序函数中

$(function(){
  $('#modalButton1').on('click', function() { variableCounter++; });
  $('#modalButton2').on('click', function() { $('#modal').hide(); })
});

我不知道
.hide()。您应该在此处调用相关函数来关闭模态对话。

您到底想做什么?而不是$('modalButton1')。在('click',function(){variableccounter++})上;尝试$(“#modalButton1”)。单击(函数(){variableCounter++});