2012-03-14 24 views
0

jQueryの選択に要素を追加

var $parent=$('.list'); 
var $children=$parent.find('li'); 

//Later on 
$parent.append($newLI);//$newLI is a new <li> element 
$children=$parent.find('li');//Refresh the jQuery collection 

は、jQueryのコレクションを更新する最後の行を書くのより良い方法はありますか? する必要があります。

ありがとうございます。

+0

したいが、 '$ children'は基本的に、ライブリストになろうとしてもらえますか? – lonesomeday

+0

私はそれを一度「リフレッシュ」する必要があります。リフレッシュ後にライブにする必要はありません。 – Francisc

答えて

3
$children = $children.add($newLI); 

addドキュメント:

説明:マッチした要素の集合に要素を追加します。

+0

@Rob W.それは正しくありません_ ".add()メソッドは新しいセットを作成し、元のセットを変更しないため、次の要素は保存されません"#_ – gdoron

+0

投稿する前にそれを試しましたが、作業。私は別のショットを与えるでしょう。 – Francisc

+1

@Francisc。私がしたように結果を保存しましたか? – gdoron

-1

ので
$parent.append($newLI); 
    $children=$children.add($newLI); 
+0

これは間違っています_" .add()メソッドは新しいセットを作成し、元のセットを変更しないため、以下の要素は保存されません。 "_ – gdoron

+1

私は' '.add() 'あなたがそれをgdoronが示すようにそれ自身に再割り当てしない限り、$ childrenコレクションを変更しません。 – Francisc

+0

@gdoron good catch..never add()この方法の前に – charlietfl