使用jQuery突出显示带有复选框的表行

时间:2012-07-08 01:47:58

标签: javascript jquery html

我有以下HTML表格。每行包含一个复选框,后跟一些文本。

<table>
    <tr>
        <td><input type="checkbox" /></td>
        <td>Name</td>
    </tr>
    <tr>
        <td><input type="checkbox" /></td>
        <td>Name2</td>
    </tr>
</table>

我需要一些帮助来编写一个脚本,该脚本将突出显示(添加一个类)已检查过的行,取消选中将删除该类。

6 个答案:

答案 0 :(得分:2)

$("#yourTableId input:checkbox").change(function() {
        var $this = $(this);
        if ($this.is(":checked")) {
            $this.closest("tr").addClass("highlight");
        } else {
            $this.closest("tr").removeClass("highlight");
        }
    });

答案 1 :(得分:2)

http://codebins.com/codes/home/4ldqpb8

    $(":checkbox").change(function() {
        $(this).closest("tr").toggleClass("highlight", this.checked)
    })

答案 2 :(得分:0)

$('[type="checkbox"]').change(function(){
  $(this).parents('tr').toggleClass('highlight')
})

答案 3 :(得分:0)

演示 http://jsfiddle.net/328QV/

<强>码

$(document).ready(function() {
    $("#Table input").click(function() {
        if ($(this).is(":checked")) {
            $(this).parent().parent().addClass("highlight");
        } else {
            $(this).parent().parent().removeClass("highlight");
        }
    });
});​

答案 4 :(得分:0)

查看此fiddle

<强> JS

$(document).ready(function () {
    $("input:checkbox").change(function () {
        alert();
        if ($(this).prop("checked") == true) {
            $(this).closest('tr').addClass("checked");
        } else $(this).closest('tr').removeClass("checked");
    });
});

<强> CSS

.checked {
    background-color:red;
}

答案 5 :(得分:0)

为我工作

      $(document).on('click','tr',function(){
    if ($(this).css('background-color')=="rgb(143, 162, 225)") {

        $(this).find('input[type="checkbox"]').prop('checked',false);

        $(this).css('background','#ffffff'); 
    } else{
        $(this).find('input[type="checkbox"]').prop('checked',true);

        $(this).css('background','#8FA2E1'); `enter code here`
    }
});