javascript - 如何使用 jQuery 禁用单击事件后发生的功能

标签 javascript jquery

我的页面上有一个按钮,单击该按钮时,会监听另一个按钮的单击情况,然后执行 AJAX 调用。例如:

$( 'button#a' ).click( function() {

    $( 'button#b' ).click( function() {
        // Perform an AJAX call here.
    });

});

这是迄今为止我的代码的演示:

DEMO

如果在页面加载期间随时单击第三个按钮 button#c,我想禁用 ajax 调用功能。我不知道如何做到这一点。希望有人能提出一种方法。

最佳答案

不应在单击内编写单击事件,而应在代码中进行修改后编写。

var third_click= false; 
$(document).ready(function() {
    $( 'button#c' ).click( function() {
        third_click = true;
    })

    $( 'button#a' ).click( function() {

        $( 'button#b' ).click( function() {
            if( !third_click ) {
                // Perform an AJAX call here.
                alert( 'ajax call in progress' );
            } else {
                alert( 'Can\'t call ajax' );
            }
        });

    });
})

here是演示。

关于javascript - 如何使用 jQuery 禁用单击事件后发生的功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27024172/

相关文章:

javascript - 侧边栏关闭时,jQuery Accordion 选项卡应关闭

Java with ajax - ERR_EMPTY_RESPONSE - 服务器处理请求时 Ajax 响应抛出错误

javascript - 缓存背景图像(javascript)

javascript - 使用 NextJS 的自托管字体

javascript - Rails 和 AJAX 远程 : true what else is required?

javascript - 在响应表中,第二列值与第一列值重叠

javascript - AngularJS 中的 jQuery 文件上传

javascript - 如何使jquery日历不从系统中选择当前日期

javascript - 防止/阻止/隐藏来自某些网站源的图像

javascript - Windows Phone 8 - JavaScript : back button