Javascript 如何防止在不使用超时的情况下同时运行多个.change函数

Javascript 如何防止在不使用超时的情况下同时运行多个.change函数,javascript,Javascript,随着时间的推移,我仍在学习JS,请原谅我的“JS”语言和解释。 我有一个系统,它从控制器获取一个数组,并使用.change函数将其传递给view.html。根据控制器中加载的数据,加载信息需要时间,因此加载数据的时间不同 然后使用下面的代码通过iframe将数据加载到视图中。我注意到,当用户输入一个输入以加载更多数据,而之前的数据仍在加载时,它也会开始运行该函数,而不必等待第一个数据完成。我想阻止下一个函数在第一个函数完成之前运行 <input id='Input' type="

随着时间的推移,我仍在学习JS,请原谅我的“JS”语言和解释。 我有一个系统,它从控制器获取一个数组,并使用.change函数将其传递给view.html。根据控制器中加载的数据,加载信息需要时间,因此加载数据的时间不同

然后使用下面的代码通过iframe将数据加载到视图中。我注意到,当用户输入一个输入以加载更多数据,而之前的数据仍在加载时,它也会开始运行该函数,而不必等待第一个数据完成。我想阻止下一个函数在第一个函数完成之前运行

<input id='Input' type="submit" name="message" ask="" >                                      
<input id='Input' class='Input' type="submit" name="message" ask="<iframe class='responsive-iframe' onLoad='IframeLoad();' ></iframe>" answer="true">

<input id='Input1' type="submit" name="message" ask="" >
                                        
<input id='Input1' class='Input1' type="submit" name="message" ask="<iframe class='responsive-iframe' onLoad='IframeLoad();' ></iframe>" answer="true">

<input id='Input2' type="submit" name="message" ask="" >
                                        
<input id='Input2' class='Input2' type="submit" name="message" ask="<iframe class='responsive-iframe' onLoad='IframeLoad();' ></iframe>" answer="true">


$(document).ready(function(){
var arr = [];//From controller, can be variable in size

$('#Input').change(function(){  
    arr.push($(this).val());
    var arrayJSON = JSON.stringify(arr);
    localStorage.setItem("TheData",arrayJSON);     
});

$('#Input1').change(function(){  
    arr.push($(this).val());
    var arrayJSON = JSON.stringify(arr);
    localStorage.setItem("TheData",arrayJSON);       
});    


$('#Input2').change(function(){  
    arr.push($(this).val());
    var arrayJSON = JSON.stringify(arr);
    //sessionStorage.setItem("TheData",arrayJSON);
    localStorage.setItem("TheData",arrayJSON);  
});

$(文档).ready(函数(){
var arr=[];//来自控制器,大小可以是可变的
$('#Input').change(function(){
arr.push($(this.val());
var arrayJSON=JSON.stringify(arr);
setItem(“TheData”,arrayJSON);
});
$('#Input1').change(function(){
arr.push($(this.val());
var arrayJSON=JSON.stringify(arr);
setItem(“TheData”,arrayJSON);
});    
$('#Input2').change(function(){
arr.push($(this.val());
var arrayJSON=JSON.stringify(arr);
//setItem(“TheData”,arrayJSON);
setItem(“TheData”,arrayJSON);
});
}))