2

すべて'ul > li'のリスト項目を取得する必要がありますが、チェックされているチェックボックスを含む項目のみを取得する必要があります。

これを視覚的に見ると、次のようになります。

<ul>
    <li>
        <input type="checkbox" checked="checked">
    </li>
    <li>
        <input type="checkbox">
    </li>
    <li>
        <input type="checkbox" checked="checked">
    </li>
</ul>

1枚目と3枚目を引っ張りたい。

前もって感謝します。

ので、私は持っています

4

4 に答える 4

6

:hasセレクターを使用できます。

$('ul li:has(input[type=checkbox]:checked)')
于 2012-09-20T21:47:07.883 に答える
5

さかのぼってチェック済みの入力から始めてみませんか

$('input[type=checkbox]:checked').parent()

http://jsfiddle.net/N7VFc/

ページに他のチェックボックスがある場合にコンテキストが必要な場合は、セレクターで指定できます

$('input[type=checkbox]:checked','ul li').parent()
于 2012-09-20T21:47:48.710 に答える
4

ここにあなたの質問に対する解決策があります:http://jsfiddle.net/H4qba/1/

HTMLコード:

<ul>
  <li><input type="checkbox" checked="checked" />a</li>
  <li><input type="checkbox"/>b</li>
  <li><input type="checkbox"/>c</li>
  <li><input type="checkbox"/>d</li>
  <li><input type="checkbox" checked="checked" />e</li>
  <li><input type="checkbox" checked="checked" />f</li>
</ul>

jQueryコード:

$('ul > li').has('input[checked="checked"]').css({border:'1px solid #c00'});
于 2012-09-20T21:51:12.107 に答える
1

あなたはこれを使うことができます:

$("ul > li input:checked").closest('li');

デモ

于 2012-09-20T21:50:04.743 に答える