2011-09-26 81 views
2

我有一个“漂亮”类的表格。更改表格单元格的背景颜色并选中复选框

每一行旁边都有一个复选框,用于选择使用表单的数据。

我希望能够点击单元格并勾选/取消选中复选框。我有工作用

$(document).ready(function() { 
    $('.pretty tr').toggle(function() { 
     $(this).find(':checkbox').attr('checked', true); 
    }, function() { 
     $(this).find(':checkbox').attr('checked', false); 
}); 

});

除此之外,我希望单元格背景颜色在复选框被选中时发生变化,如果未选中复选框,则不变。

我还没有这样做的任何运气,任何想法的?

我曾尝试加入

$(this).addClass('cssclassname'); 

以上面没有运气:(

编辑刚刚更新的类“漂亮”已经有了下面的CSS,这使得该表中的数据差异颜色的每一行。

看来,当我尝试了jQuery toggleClass功能并不比现有的CSS应用它?

table.pretty { 
    background: whitesmoke; 
    border-collapse: collapse; 
} 
table.pretty th, table.pretty td { 
    border: 1px silver solid; 
    padding: 0.2em; 
} 
table.pretty th { 
    background: gainsboro; 
    text-align: left; 
} 
table.pretty caption { 
    margin-left: inherit; 
    margin-right: inherit; 
} 
table.pretty tr:nth-child(odd) { background-color:#eee; } 
table.pretty tr:nth-child(even) { background-color:#fff; } 

回答

1

看到这个DEMO

您Jquery的另一种方法是HERE

让检查演示HERE。我不知道这是做到这一点的最好方法

+0

确实试过这个,难道这个类漂亮已经有CSS属性?如果将它们添加到演示中,它将不再有效。 – user964406

+0

@user,我认为添加其他类不会影响切换类。请更新您的问题并提供更多详细信息 –

+0

已更新问题并提供更多详细信息。这里是你使用的网站的更新版本http://jsfiddle.net/unauu/9/ – user964406

0
$(document).ready(function() { 
    $('.pretty tr').toggle(function() { 
     $(this).find(':checkbox').attr('checked', true); 

    }, function() { 
     $(this).find(':checkbox').attr('checked', false); 
    }); 
}); 

$(this).addClass('class');会做到这一点...

相关问题