选择特定行和列中的特定输入元素

时间:2011-11-20 20:35:15

标签: javascript jquery asp.net jquery-selectors

Cosider这张图片: enter image description here

如果没有jQuery的ID,我怎么能选择它?我的意思是我如何选择它就像这句话:

使用代码= 1000和列描述

查找行中的输入

感谢

修改1)

HTML代码

<table border="1" width="300px">
    <tr>
        <td>
            Desc2
        </td>
        <td>
            Desc1
        </td>
        <td>
            Code
        </td>
    </tr>
    <tr>
        <td bgcolor="#CCCCB3">
            <input id="Text1" type="text" />
        </td>
        <td>
        </td>
        <td>
            1000
        </td>
    </tr>
    <tr>
        <td bgcolor="#FFFFCC">
            &nbsp;
        </td>
        <td bgcolor="#FFFFCC">
        </td>
        <td bgcolor="#FFFFCC">
        </td>
    </tr>
    <tr>
        <td bgcolor="#CCCCB3">
            <input id="Text2" type="text" />
        </td>
        <td>
        </td>
        <td>
            1001
        </td>
        <tr>
            <td bgcolor="#CCCCB3" class="style1">
                <input id="Text3" type="text" />
            </td>
            <td class="style1">
            </td>
            <td class="style1">
                1002
            </td>
        </tr>
        <tr>
            <td bgcolor="#CCCCB3">
                <input id="Text4" type="text" />
            </td>
            <td>
            </td>
            <td>
                1003
            </td>
        </tr>
</table>

1 个答案:

答案 0 :(得分:1)

选择最后一个单元格,过滤最后一个单元格的值等于“1000”的行,然后选择该集合的第一个输入元素:

$("table td:last-of-type").filter(function(){
    return $(this).text() == "1000";
}).parent().find("input:first");

要构建此类选择器,您可以使用以下命令:

  • :eq().eq()
  • :nth-child()(仅适用于特定的儿童职位!)

警告:会陷入contains()的陷阱。此方法选择包含给定短语的所有元素。 .contains(1000)也会选择<td>10000</td>