1

ブラウザの JavaScript コンソールでこれを試してください。

$('<p><span id="wow">FooBar</span></p>').filter('#wow')

私が得るものは[]です。何故ですか?IDが「すごい」ではないスパンを除外することになっていませんか?

4

4 に答える 4

2

jQuery オブジェクトには 1 つの要素しかなく、p. spanたまたま子供です。次に、 p はクエリと一致せず、フィルターは空の配列を返します。find を使いたいかもしれません:

$('<p><span id="wow">FooBar</span></p>').find('#wow')
于 2013-07-01T04:36:15.457 に答える
2

.filter()一致した要素のセットをフィルタリングします。要素セット内の唯一の要素は<p>タグであり、セレクターと一致しません。

.find()代わりに使用したい:

> $('<p><span id="wow">FooBar</span></p>').find('#wow')
[<span id=​"wow">​FooBar​&lt;/span>​]
于 2013-07-01T04:40:39.783 に答える
1

フィルターにより、条件に一致するアイテムが表示されます。私はあなたが「ない」を使うことを意味していると思います。

于 2013-07-01T04:36:56.253 に答える
0

ドキュメントのセレクターの構文を見てください。要素が見つかったかどうかに応じて、結果もゼロコレクションになる可能性があります。

id セレクターを引数として jQuery() (または $()) を呼び出すと、0 個または 1 個の DOM 要素のコレクションを含む jQuery オブジェクトが返されます。

于 2013-07-01T04:41:11.640 に答える