使用JQuery选择表行并选中复选框

时间:2013-03-26 09:28:49

标签: jquery

我有一个表,我想选择符合我标准的行并检查它们各自的复选框。假设我想获取日期为2013-03-21的行。我怎么能用JQuery做到这一点?

<table>
<tr>
    <td>
        Record1
    </td>
    <td>
        2013-03-21
    </td>
    <td>
        <input type="checkbox"/>
    </td>
</tr>
<tr>
    <td>
        Record2
    </td>
    <td>
        2013-03-22 
    </td>
    <td>
        <input type="checkbox"/>
    </td>
</tr>
<tr>
    <td>
        Record3
    </td>
    <td>
        2013-03-21
    </td>
    <td>
        <input type="checkbox"/>
    </td>
</tr>
</table>

3 个答案:

答案 0 :(得分:9)

$("table tr").each(function () {
    if ($(this).find("td:eq(1)").text().trim() == '2013-03-21') {
     $(this).find("input[type=checkbox]").attr("checked", true);
  }
});

DEMO

答案 1 :(得分:1)

你可以使用filter(),你最好为表分配一些id并在选择器中使用它并且是特定的

<强> Live Demo

trs = $('td').filter(function(){
 if($.trim($(this).text()) == '2013-03-21')
    return $(this).parent();
});

答案 2 :(得分:0)

你可以使用filter

var tableRow = $("td").filter(function() {
    return $(this).text() == '2013-03-21';
}).closest("tr");

或使用contain

var tableRow = $("tr:has(td:contains('2013-03-21'))");