mcerveni Posted October 12, 2009 Share Posted October 12, 2009 I need to clearInterval, and instead it keeps looping. Any reason why?? code below. function requestforbreak(id,name) { requestbreak(id,name); empid=id; interval = setInterval("checkforbreaks();",1000); } function requestbreak(id,name){ http.open('get', '../../queuecenter/include/requestBreak.php?empID='+id+'&agentName='+name); http.onreadystatechange = function(){ if(http.readyState == 4){ var response = http.responseText; document.getElementById('breakreqmsg').innerHTML = ' ' +response+ ''; } } http.send(null); } function checkforbreaks(){ http.open('get', '../../queuecenter/include/breakPending.php?empID='+empid); http.onreadystatechange = function(){ if(http.readyState == 4){ var response = http.responseText; if(response == 'false'){ clearInterval(interval); document.getElementById('breakreqmsg').innerHTML ='Done'; } document.getElementById('breakreqmsg').innerHTML = ' ' +response+ ''; } } http.send(null); } Link to comment https://forums.phpfreaks.com/topic/177368-clearinterval-not-workingplease-help/ Share on other sites More sharing options...
kickstart Posted October 12, 2009 Share Posted October 12, 2009 Hi Can't see anything obvious (I presume the scope of interval is appropriate). Only thing I can think of is that if breakPending.php takes a while to return then you could have numerous requests which will return and trigger the onreadystatechange (and continue to do so even if you have cancelled the timer, just no fresh ones will be set up). All the best Keith Link to comment https://forums.phpfreaks.com/topic/177368-clearinterval-not-workingplease-help/#findComment-935328 Share on other sites More sharing options...
GKWelding Posted October 12, 2009 Share Posted October 12, 2009 Try the following. <script type="text/javascript"> function requestforbreak(id,name) { requestbreak(id,name); empid=id; interval = window.setInterval("checkforbreaks();",1000); } function requestbreak(id,name){ http.open('get', '../../queuecenter/include/requestBreak.php?empID='+id+'&agentName='+name); http.onreadystatechange = function(){ if(http.readyState == 4){ var response = http.responseText; document.getElementById('breakreqmsg').innerHTML = ' ' +response+ ''; } } http.send(null); } function checkforbreaks(){ http.open('get', '../../queuecenter/include/breakPending.php?empID='+empid); http.onreadystatechange = function(){ if(http.readyState == 4){ var response = http.responseText; if(response == 'false'){ window.clearInterval(interval); document.getElementById('breakreqmsg').innerHTML ='Done'; } document.getElementById('breakreqmsg').innerHTML = ' ' +response+ ''; } } http.send(null); } </script> Link to comment https://forums.phpfreaks.com/topic/177368-clearinterval-not-workingplease-help/#findComment-935345 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.