Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.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 复选框,用于将类添加到其所在的tr_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 复选框,用于将类添加到其所在的tr

Javascript 复选框,用于将类添加到其所在的tr,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我的桌子的结构是这样的。如何确保如果选中输入,它将向其所在的添加一个类“selected”?如果复选框被取消选中,它将从中删除类“selected”?请帮帮我:) tryb 巴布亚新几内亚 测试 巴布亚新几内亚 [..] 将onchange事件绑定到复选框: $("input[type=checkbox]").change(function () { $(this).closest('tr').toggleClass('selected', this.checked); }).chan

我的桌子的结构是这样的。如何确保如果选中输入,它将向其所在的添加一个类“selected”?如果复选框被取消选中,它将从中删除类“selected”?请帮帮我:)


tryb
巴布亚新几内亚
测试
巴布亚新几内亚
[..]

将onchange事件绑定到复选框:

$("input[type=checkbox]").change(function () {
    $(this).closest('tr').toggleClass('selected', this.checked);
}).change(); // manually trigger change after the binding

每次复选框更改时,您都会根据选中状态将父行设置为选中。

您将onchange事件绑定到复选框:

$("input[type=checkbox]").change(function () {
    $(this).closest('tr').toggleClass('selected', this.checked);
}).change(); // manually trigger change after the binding
每次复选框更改时,您都会根据选中状态将父行设置为选中。

这很简单

$('input[type=checkbox]').change(function(){
    if(this.checked)
        $(this).closest('tr').addClass('selected');
    else
        $(this).closest('tr').removeClass('selected');
});
这很容易

$('input[type=checkbox]').change(function(){
    if(this.checked)
        $(this).closest('tr').addClass('selected');
    else
        $(this).closest('tr').removeClass('selected');
});
您可以这样做:

$(':checkbox').change(function () {
  $(this).parent().toggleClass('selected');
}); 
参考资料:

    • 您可以这样做:

      $(':checkbox').change(function () {
        $(this).parent().toggleClass('selected');
      }); 
      
      参考资料:


      但如果checbox的参数“已检查”,则它不起作用。我的意思是,页面刷新后没有“已选择”类:(@user326158如果在标签上选中了
      进行加载,则不会通过
      onchange
      事件进行设置。您需要手动
      onload
      逻辑来处理页面的初始呈现,或者需要在绑定后手动触发更改。答案已更新。@user326158,只需使用
      $(':checkbox')。更改(函数(){$(this).closest('tr')。toggleClass('selected',this.checked);}).change();
      会处理它,但是如果checbox有参数“checked”,它就不起作用了。我的意思是在页面刷新后没有“selected”类:(@user326158如果在标签上选中了
      进行加载,则不会通过
      onchange
      事件进行设置。您需要手动
      onload
      逻辑来处理页面的初始呈现,或者需要在绑定后手动触发更改。答案已更新。@user326158,只需使用
      $(':checkbox')。更改(函数(){$(this).closest('tr').toggleClass('selected',this.checked);}).change();
      将处理它