Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript “我的表”行中的“委派”复选框_Javascript_Jquery - Fatal编程技术网

Javascript “我的表”行中的“委派”复选框

Javascript “我的表”行中的“委派”复选框,javascript,jquery,Javascript,Jquery,我的表格行中有复选框,如何从上面的单击事件中委派它?我不希望在单击复选框时发生事件。使用stop以防止单击内部元素在父元素中冒泡 $('body').on('click','#myTable tbody',function(e){ alert('do something'); }); 现在,仅当您单击表中的任何位置时,警报才会出现,该位置不是输入[type=“checkbox”]您可以检查目标是否为复选框并阻止进一步执行: $('body').on('click','#myTable

我的表格行中有复选框,如何从上面的单击事件中委派它?我不希望在单击复选框时发生事件。

使用stop以防止单击内部元素在父元素中冒泡

$('body').on('click','#myTable tbody',function(e){
    alert('do something');
});

现在,仅当您单击表中的任何位置时,警报才会出现,该位置不是
输入[type=“checkbox”]
您可以检查目标是否为复选框并阻止进一步执行:

$('body').on('click','#myTable tbody input[type="checkbox"]',function(event){
    event.stopPropagation();
});

$('body').on('click','#myTable tbody',function(e){
    alert('do something');
});
检查此项

尝试此项

您可以使用Jquery和选择器来实现这一点

$(document).ready(function(){

    $('body').on('click','#myTable tbody',function(e){

        if($(e.target).is(':checkbox'))
        {
            return;
        }

        alert('do something');

    });
})

仅在未选中目标类型复选框时工作以执行功能
$(文档).ready(函数(){
$('body')。在('click','myTable tbody',函数(e){
如果(例如,target.type!='checkbox')
警惕(“做某事”);
});
});

453
尼克·詹姆斯
12/9/2016

请你解释一下你想要什么。。是否要在用户单击表行时选中该复选框?或者什么?那么你不想有人点击复选框?\@wwwell我已经在最后一句话中解释过了,伙计。@RejithRKrishnan当有人点击复选框时,我不想点击事件使tbody发生。@SivaNatalie see。OP说当有人点击复选框时,我不想点击事件使tbody发生。
$(document).ready(function(){

    $('body').on('click','#myTable tbody',function(e){

        if($(e.target).is(':checkbox'))
        {
            return;
        }

        alert('do something');

    });
})
$('body').on('click','#myTable tbody td:not("td:has(input[type=checkbox])")',function(event){
   alert('do something');
});