2012-06-02 7 views
0

Я список порожден АЯКС вызовом, как этотReplaceWith JQuery

<ul id="list"> 
    <li name="A">some val</li> 
    <li name="B">some val</li> 
    <li name="C">some val</li> 
</ul> 

с setinterval, то же Ajax вызов будет создать список, как это

<ul id="listClone"> 
    <li name="A">some new val</li> 
    <li name="B">some cccc val</li> 
    <li name="C">some ddd val</li> 
</ul> 

после того как я получаю listClone, мне нужно заменить список «A» на listClone A.

Как это сделать с помощью jQuery?

+0

Я не уверен, если вы пытаетесь заменить весь список или просто элемент 'li' с' name = A', но если это последний, это то, что отвечает мой ответ – lucuma

ответ

2

Я считаю, что вы просто хотите заменить литиево элемент:

$('#list li[name=A]').html($('#listclone li[name=A]').html()); 
0

$('#list').replaceWith('<ul id="listClone"><li name="A">some new val</li><li name="B">some cccc val</li><li name="C">some ddd val</li></ul>');

Предложение:

Попробуйте держать новый список идентификаторов как «list`, а не„listClone“, так как это не будет работать в следующий раз, когда вы вызываете код.

0
$("#list").html($("#listClone").remove().html()); 

listClone удален. и html списка заменяется html listClone.

0

Чтобы удалить весь #list с #listClone вы можете сделать:

$('#list').replaceWith($('#listClone')); 

Чтобы удалить определенный элемент списка из #list с #listClone пункт вы можете сделать:

$('#list').eq(0).replaceWith($('#listClone').eq(0)); // replace first element 

или с помощью атрибута name

$('#list li[name=A]').replaceWith($('#listClone li[name=A]')); // replace first element 

Также делать с .html():

$('#list li[name=A]').html($('#listClone li[name=A]').html()); // replace first element 

Также можно использовать .text()

$('#list li[name=A]').text($('#listClone li[name=A]').text()); // replace first element