切换表无法正常工作

时间:2012-12-17 07:26:09

标签: jquery

Here is my demo code

我想禁用td这个内容'点击必须禁用'并点击'点击听力1'正常工作但无法正常工作'点击听众2'

JQUERY:

$("#chart tr:odd").addClass("odd");

$("#chart tr.odd").click(function()
    {
  $(this).next("tr").toggle();
});

HTML:

<table id="chart">
    <tbody>
    <tr class="odd">
        <td height="25" width="200px"><b>TABLE 1</b>&nbsp;</td>
        <td colspan="6">CLICKING MUST BE DISABLE</td>
    </tr>   
    <tr class="odd">
        <td style="padding-right: 30px;" width="100px"></td>
        <td style="background-color: rgb(237, 237, 237);" width="200px">CLICK HEAR 1</td>
        <td height="25">
        </td>
    </tr>   
    <tr style="display: none;">
       <td></td>
       <td colspan="4">
                 sssss<br>sssss<br>sssss<br>sssss<br>sssss<br>sssss<br>sssss<br>sssss<br>   
        </td>
    </tr>
    <tr class="odd">
        <td height="25" width="200px"><b>TABLE 2</b>&nbsp;</td>
        <td colspan="6">CLICKING MUST BE DISABLE</td>
    </tr>   
    <tr>
        <td style="padding-right: 30px;" width="100px"></td>
        <td style="background-color: rgb(237, 237, 237);" width="200px">CLICK HEAR 2</td>
        <td height="25">
        </td>
    </tr>   
    <tr class="odd" style="display: none;">
       <td></td>
       <td colspan="4">
                 sssss<br>sssss<br>sssss<br>sssss<br>sssss<br>sssss<br>sssss<br>sssss<br>   
        </td>
    </tr>
    </tbody>
</table>

2 个答案:

答案 0 :(得分:3)

您正在使用:odd选择器,但您要选择的行不是奇数行。

  1. 必须禁用点击
  2. 点击此处1
  3. 必须禁用点击
  4. 点击此处2
  5. 以下jsFiddle显示了一个工作示例:http://jsfiddle.net/2rDww/

    我已将odd类手动添加到应该可点击的两行中。您可以删除将奇数类添加到所有奇数行的第一行。

答案 1 :(得分:-1)

这是您的HTML(简化):

<tr class="odd">
    <td>CLICK HEAR 1</td>
</tr>

<tr>
    <td>CLICK HEAR 2</td>
</tr>

这是您的点击功能

$("#chart tr.odd").click(function() {
    $(this).next("tr").toggle();
});

它正在查找课程tr的所有odd:HTML中的第一个tr包含它,但是第二个$("#chart tr:odd").addClass("odd"); 没有(这就是为什么它不起作用)。您尝试使用以下代码通过JavaScript添加这些类:

odd

但是在点击处理程序之后应用了

解决方案可能是您要将tr类添加到第二个odd,但最动态的是将您的选择器更改为使用$("#chart tr:odd").click(function() { $(this).next("tr").toggle(); }); 过滤器而不是类:

{{1}}

聚苯乙烯。这是“ here ”,而不是“听到”;)。