#jquery #replacewith
#jquery #замена с
Вопрос:
пример
<script type="text/javascript">
$(document).ready(function () {
$("#exp1").replaceWith($("#exp2"));
});
</script>
<div class="exp1">example 1</div>
<div class="exp2">example 2</div>
когда я использую этот код, я потерял exp2 (средний пример 2 не отображается), отображается только пример 1, который был заменен примером 2..
как мне не потерять и просто заменить exp1 на exp2 и отобразить результат, как показано ниже
<div class="exp2">example 2</div>
<div class="exp2">example 2</div>
пожалуйста, помогите мне.. Спасибо
Комментарии:
1.
$(".exp1").replaceWith(".exp2");
используйте это. jsfiddle.net/buGH8/12. Ваш код не имеет смысла: нет никаких элементов, которые соответствуют селекторам
#exp1
илиexp2
.3. пожалуйста, посмотрите мои последние правки..
4. Проблема по-прежнему не повторяется: селекторы соответствуют идентификаторам, но элементы имеют классы.
5. да, Юхана, это была моя ошибка.. Я изменил его, и теперь он изменился на классы.. Я получил ответ от @Satpal .. спасибо всем
Ответ №1:
Затем вы должны clone()
использовать этот replaceWith
метод. Также вам необходимо использовать селектор классов
Используйте
$(document).ready(function () {
$(".exp1").replaceWith($(".exp2").clone());
});
Комментарии:
1. Вы прекрасно знаете, почему ответ был сначала отклонен. К сожалению, изменения ninja не оставляют следа в истории ответов, но ответ продолжал колебаться между использованием идентификаторов и классов.
2. @Juhana Но мне интересно, почему ребята отклонили первое сообщение, опубликованное пользователем balach ..? Это совершенно нормально.. Разве ..?
3. @RajaprabhuAravindasamy не может знать наверняка, но
[0].outerHTML
довольно схематично и не совсем то же самое, что.clone()
.