第二个clearInterval无法阻止函数执行

时间:2016-05-11 23:54:26

标签: javascript jquery

我有2个js函数 - 其中一个在全局main.js文件中,另一个在我的html页面<script>标签的本地。我可以在所有文件中访问main.js,因为它们是通过ajax加载到main.html页面中的。我可以在我的html页面中从clearInterval停止主函数,但是当我尝试为本地函数执行clearInterval时,它无法正常工作。

点击“编辑”后,clearIntervals会被触发页面的按钮。但我的问题是当我点击“编辑”时只有全局函数被停止但不是本地函数。该功能只是根据从服务器收到的值更新selectmenu选项。对于textboxes,它会实时更新,但对于selectmenus,我必须使用此方法使其实时运行。

以下是具有本地功能的JS代码:

var dropdown_update=setInterval(updateDropdownValues, 1200); //calling the local function

function updateDropdownValues(){

    //does some work

}

$("#editFields").click(function(){

    //some code
    clearInterval(ajax_interval); //works..ajax_interval is in main.js not shown here
    clearInterval(dropdown_update); //doesnt work..keeps executing the function

});

以下是main.js相关部分(我不认为这是罪魁祸首):

var ajax_interval = setInterval(loadAjaxData2, 1 * 1000);

function loadAjaxData2() {
   //some variables
    $.ajax({
        //an ajax call
    });

} 

我查看了几个stackoverflow帖子,但没有一个有这种问题。

0 个答案:

没有答案