Javascript 如何防止其他元素单击时发生div.click事件

Javascript 如何防止其他元素单击时发生div.click事件,javascript,jquery,Javascript,Jquery,我想阻止单击事件,但e.stopPropagation()不起作用 我试着写一些类似Jtable的东西。我使用div作为分页按钮(1),另一个元素是deletebutton 当删除确认框弹出时,我需要禁用分页按钮。单击“删除”或“取消”后,“我希望我的分页按钮再次工作”。 有什么解决办法吗? 我知道我应该使用input disabled而不是div,但我需要使用div。 编辑:添加图像以使其易于理解。而不是阻止单击处理程序。。。使用删除已注册的处理程序,此处使用,因为我们只想删除非常特定的处理

我想阻止单击事件,但
e.stopPropagation()
不起作用

我试着写一些类似Jtable的东西。我使用div作为分页按钮(1),另一个元素是deletebutton

当删除确认框弹出时,我需要禁用分页按钮。单击“删除”或“取消”后,“我希望我的分页按钮再次工作”。 有什么解决办法吗?

我知道我应该使用input disabled而不是div,但我需要使用div。
编辑:添加图像以使其易于理解。

而不是阻止单击处理程序。。。使用删除已注册的处理程序,此处使用,因为我们只想删除非常特定的处理程序

function deleteit() {
    $(".del").click(function () {
        $(".divbutton").off('click.delete')
    })
}

$(".deletebtn").click(function () {
    deleteit();
});

$(".divbutton").on('click.delete', function () { // I want to prevent this from click
    //ajax send and display data
});
为什么你的代码不起作用?因为停止传播将阻止事件冒泡,但在您的情况下,这两个事件都注册到
divbutton
,因此即使阻止传播,也会触发这两个事件


另一种方法是使用即使在这里也不可能,因为您的delete稍后会注册处理程序,并且只有在调用第一个处理程序后才会执行它

哪个部分与“div.click”相关,哪个部分与“other elements”相关请修复您的缩进。您的语法无效。很难说清楚你想做什么。啊,对不起,另一个元素是。deletebtn,我使用div作为按钮。
function deleteit() {
    $(".del").click(function () {
        $(".divbutton").off('click.delete')
    })
}

$(".deletebtn").click(function () {
    deleteit();
});

$(".divbutton").on('click.delete', function () { // I want to prevent this from click
    //ajax send and display data
});