0

次のことを行う必要があります。trの3番目のtdに(正確に)56が含まれているかどうかを確認してから、その行の最初のtdに含まれているチェックボックスのIDを取得します。

<table>
    <tr class="bg">
        <td nowrap="nowrap">
            <input class="selected_ads" type="checkbox" id="43617" />
        </td>
        <td class="pa">text text</td>
        <td class="pa">56</td>
    </tr>
    <tr class="bgwhite">
        <td nowrap="nowrap">
            <input class="selected_ads" type="checkbox" id="183578" />
        </td>
        <td class="pa">text</td>
        <td class="pa">56</td>
    </tr>
</table>

($("。bgtd:nth-​​child(3):contains('56')")。length> 0)または($("。bgwhitetd:nth-​​child(3):contains('56') ").length> 0)は、3番目のセルに探している値が含まれているかどうかを確認します。

$( "。pa")。siblings()。first()。children( "input [type ='checkbox']")はチェックボックスを取得しますが、そのIDを取得できません。

理想的には、私のコードは次のようになります。

var longlist = [];
for each ($(".bg td:nth-child(3):contains('56')").length>0) {

retrieve the id of $(".pa").siblings().first().children("input[type='checkbox']");
longlist.push(checkbox_id);
}

.bgwhiteについても同じことを行います。

理想的にはそれも機能します。

私にとって最も重要なことは、IDを取得することです。

4

2 に答える 2

1

jQuery要素が与えられた場合:

var $foo = $(".pa").siblings().first().children("input[type='checkbox']");

IDにアクセスするには、少なくとも4つの方法があります。

  1. var id = $foo[0].id;–配列の間接参照+バニラDOM
  2. var id = $foo.get(0).id;http://api.jquery.com/get + vanilla DOM
  3. var id = $foo.attr('id');http://api.jquery.com/attr
  4. var id = $foo.prop('id');http://api.jquery.com/prop

あなたはそれらすべてを試したが、どれもうまくいかなかったと言っていますか?

于 2013-02-25T16:06:44.827 に答える
0
$('.bg .pa:last').each(function(){

     if($(this).text() === '56'){

         longlist.push( $(this)
                           .closest('.bg')
                           .find('.selected_ads')
                           .attr('id') );
     }
});
于 2013-02-25T16:15:57.797 に答える