如何通过Jquery在td上添加类

Man*_*ngh 1 jquery

我有以下HTML

<table class="Newuser" cellspacing="0" cellpadding="0" border="0" id="ctl00_ContentPlaceHolder2_CreateUserWizard1">
<tr>
    <td>
        <table>
            <tr>
                <td>
                </td>
                <td>
                </td>
            </tr>
        </table>
    </td>
</tr>
<tr>
    <td>
        <table>
            <tr>
                <td>
                </td>
                <td>
                </td>
            </tr>
        </table>
        </td>
    </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

现在我想通过Jquery在运行时添加一个类,以便我的更新代码如下所示.我想在第二个tr第一个td上添加一个,其主要类是"Newuser"

<table class="Newuser" cellspacing="0" cellpadding="0" border="0" id="ctl00_ContentPlaceHolder2_CreateUserWizard1">
<tr>
    <td>
        <table>
            <tr>
                <td>
                </td>
                <td>
                </td>
            </tr>
        </table>
    </td>
</tr>
<tr>
    <td>
        <table>
            <tr>
                <td class="buttonClose">
                </td>
                <td>
                </td>
            </tr>
        </table>
        </td>
    </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

请指教!

nic*_*ckf 5

首先,我不得不说嵌套表是100%糟糕的.请重新考虑您的设计.

好的,现在这不在我的系统中,试试这个:

$("table.Newuser > tbody > tr:eq(1) table td:eq(0)").addClass("buttonClose")
Run Code Online (Sandbox Code Playgroud)

要选择Newuser表的第一行,您需要使用这些>子规则,包括tbody,否则"second tr"实际上tr是第一行中表的第一行,如果您知道我的意思.

有些浏览器会<tbody>自动向没有它们的表添加元素,有些则不会,并且我认为此查询可能无法在这些浏览器中使用.您应该始终在表中添加tbody元素.(永远不要把它们筑巢!)