JQuery клон оригинального HTML, а не DOM - PullRequest
2 голосов
/ 17 мая 2011

Мне нужно клонировать раздел разметки, который уже был изменен в DOM. Я хочу получить исходный HTML-код - то, что видно в View> Source.

clone () использует то, что находится в DOM

Ответы [ 5 ]

7 голосов
/ 17 мая 2011

Вы не можете.

Если вам это нужно, сохраните исходную разметку в переменной JavaScript, прежде чем вносить какие-либо изменения.

2 голосов
/ 17 мая 2011

Попробуйте поместить его в variable, прежде чем манипулировать DOM.Я использую этот метод для шаблонизации JQuery ... var template = $('#template').html()

1 голос
/ 17 мая 2011

Простой подход - сохранить оригинальную разметку в скрытой div.Затем клонируйте этот скрытый контент.

Другой вариант - сделать запрос AJAX для получения исходного документа, а затем загрузить оттуда HTML-код, который вы хотите дублировать.

0 голосов
/ 10 июня 2014

Я написал библиотеку для этой задачи некоторое время назад:)

http://www.moyablog.com/innerouter-xhtml/

originalOuterXHTML(element) выполнит то, что вы хотите

0 голосов
/ 17 мая 2011

вам нужно будет скопировать этот HTML-код во что-то, прежде чем вносить изменения в DOM.то, что DOM в настоящее время имеет в любой данный момент времени, - это то, к чему у вас есть доступ, а не прошлые / будущие версии, если вы явно не сохранили их во что-то

...