У меня есть переменное число элементов с одинаковым именем класса:Как использовать JQuery ReplaceWith заменить переменное число элементов
<p class="test"></p>
<p class="test"></p>
Я хочу, чтобы заменить каждый из них с новым набором элементов с тем же классом имя, но не может быть больше или меньше элементов:
<p class="test"></p>
или
<p class="test"></p>
<p class="test"></p>
<p class="test"></p>
Если я использую $('p.test').replaceWith('new content')
, он заменит каждый элемент содержимым, поэтому я не могу этого сделать.
Каков наилучший способ для этого?
EDIT (другое объяснение):
Так что эти элементы на странице:
<p class="test"></p>
<p class="test"></p>
<p class="test"></p>
Затем я динамически получить новый набор элементов (переменное число из них), которые имеют то же имя класса (и, возможно, некоторые другие имена классов). Например:
<p class="test classa"></p>
<p class="test classb"></p>
В приведенном выше примере, я хочу, чтобы первые три <p>
элементы пропадут. И на их месте должны быть 2 динамически удаленных элемента <p>
.
Имейте в виду, что количество элементов любого набора может отличаться.
Почему они имеют один и тот же класс? Если вы хотите, чтобы у каждого были разные элементы, вы должны использовать разные идентификаторы. Или добавьте новые элементы на лету с помощью jquery. Я не совсем понимаю ваш вопрос, не могли бы вы объяснить немного лучше? Спасибо :) –
Они имеют один и тот же класс, потому что это то, как они оформлены (не то, что я контролирую). Я не могу добавить идентификаторы, потому что у меня нет возможности изменить разметку. Я мог бы '.remove()' и '.append()', если это мой единственный вариант, но мне было любопытно более элегантное решение. – fehays
Добавлен новый ответ, возможно, это поможет вам –