多个类打破了jquery选择器?

Dan*_*Dan 0 jquery css-selectors

我正在研究一个所有行至少有一个类的表.有些行有两个类,有些行有一个类和一个id.

我有一个简单的点jquery隐藏和显示行onclick,但是当设置所有属性时,没有任何反应.

如果我删除其他属性,以便只使用jquery脚本中的那些属性,则它全部按计划工作,但由于不再应用样式,因此看起来不正确.

有谁知道这里发生了什么?

这是jquery

`$("td.toggleguest").click(function(){  
        var delegaterow = $(this).parent().attr('id'); 
        var rowspl = delegaterow.split('_');
        var rownum = rowspl[1];
        $('tr.subrow_'+rownum).toggle();
       });
Run Code Online (Sandbox Code Playgroud)

`

从源代码复制的示例HTML标记:

<tr id="delegaterow_7" class="light_row"> 
<td class="toggleguest">Some Content</td> 
<td>Some Content</td> 
<td>Some Content</td> 
<td>Some Content</td> 
<td>Some Content</td> 
<td>Some Content</td> 
<td>Some Content</td> 
</tr>
<tr class="light_row" class="subrow_7">      
<td colspan="6">Some Content</td> 
<td>Some Content</td>
</tr>
Run Code Online (Sandbox Code Playgroud)

该表有人行(每个都有一个id为row_X),有些行有guest.guest行被赋予类名'subrow_X',其中X匹配父行的ID.

我不想用桌子来做这件事,但这是我无法控制的.

任何建议将不胜感激.

谢谢.

小智 7

您使用的HTML语法不正确:

<tr class="light_row" class="subrow_7">     
Run Code Online (Sandbox Code Playgroud)

不允许具有多个相同的属性.因此,将class属性组合在一个属性中,如下所示:

<tr class="light_row subrow_7">
Run Code Online (Sandbox Code Playgroud)

jQuery应该现在正在工作.