0

我需要将一些 css 应用于一些 TR 及其子项,但一列及其子项除外,它们是复选框

以下均无效

 $('#myRow').not('input').css( "background-color", "#E0E0E0" ).bind('click', function(e){e.preventDefault();});

 $('#myRow').not('.myCellClass').css( "background-color", "#E0E0E0" ).bind('click', function(e){e.preventDefault();});

 $('#myRow:not(.myCellClass)').css( "background-color", "#E0E0E0" ).bind('click', function(e){e.preventDefault();});

 $('#myRow:not(input)').css( "background-color", "#E0E0E0" ).bind('click', function(e){e.preventDefault();});
4

3 回答 3

1

事件委托是一个更好的选择:

$('table#mayTable').on('click', 'tr', function (event) {
    if ($(event.target).find('input').length) {
        // this row has inputs
        return;
    }
    // row does not have inputs
    // do what ever you like
}   
于 2013-09-20T15:38:15.263 回答
1

向要绑定点击事件的 td 添加不同的类。

<table>
<tr>
<td class="clickable"></td>
<td class="nonclickable"></td>
<td class="clickable"></td>
</tr>
</table>

$('tr td.clickable').click(function(){ // do wathever you want. 
});
于 2013-09-20T15:33:27.670 回答
0

好吧,您可以使用.end()下面的 CSS 更改作为示例。

$(function() {
       $("table").find("tr").css("background","red")
       .end()
       .find(".b")
        .css("background","#fff") 
 });

演示中的上述示例 http://jsbin.com/uvUTiGu/1/edit?html,css,output

于 2013-09-20T15:38:27.713 回答