2012-03-14 3 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() 'не меняет коллекцию $ children, если вы не переадресовываете ее себе, как показал gdoron. – Francisc

+0

@gdoron хороший catch..never used add() таким образом до – charlietfl

Смежные вопросы