27 / 41 / 13
Регистрация: 15.05.2013
Сообщений: 1,313
1

Вывод исходников документа в сам документ

25.05.2016, 19:09. Показов 549. Ответов 8
Метки нет (Все метки)

Как с помощью рег-го выражения вывести код, допустим текущей страницы в блок?
Т.е. нужно вывести просто как текст весь код html-страницы, записать допустим в тег div и вывести на экран

Добавлено через 26 минут
кстати не обязательно с помощью рег. выражений. Главное вывести код страницы в блок.
А если просто взять скопировать и записать код с html-тегами в новый блок, то в этом новом блоке страница будет повторяться визуально, а нужно только показать код

Добавлено через 1 минуту
нужно что-то типа такого
<code>код всей страницы</code>

Добавлено через 2 часа 45 минут
У кого какие идеи?

Добавлено через 3 минуты
делаю так:
Javascript
1
2
3
4
5
var text=$(document.body).html(),
        reg=/(<)(\/?\w+?)(>)/ig,
        br=/\n|\n\r/;
    var res=text.replace(reg,'&lt;$2&gt;');
$('.block').html(res);
но код почему-то не все скобки заменяет

Добавлено через 46 минут
я так понял регулярка должна быть примерно такой?
Javascript
1
reg=/(\<)(\/?.*?)(\>)/ig,
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.05.2016, 19:09
Ответы с готовыми решениями:

Notesviewentry.universalid дергает сам документ?
Привет! Кто знает, notesViewEntry.UniversalID достает документ из БД или читает значение из...

Фрагмент времени исходников в Sony Vegas. (просмотр таймлайна исходников)
Добрый день участники форума, на сегодняшний день мне после создания видео ролика из более чем 10...

Копирование строк из документа в документ
Приветствую народ! Помогите нубу! Немного дорабатываю стандартную конфигурацию. Необходимо...

Выборочное копирование из документа в документ
Помогите плиз. Есть документ 1.doc и таблица данных вида: 5, 20 45, 68 100, 325 Нужно...

8
123 / 62 / 37
Регистрация: 22.05.2016
Сообщений: 174
25.05.2016, 19:19 2
Код страницы можно взять так:
Javascript
1
document.documentElement.outerHTML;
Только будет без DOCTYPE
В браузерах новее чем IE9 весь HTML можно взять так:
Javascript
1
new XMLSerializer().serializeToString(document);
0
27 / 41 / 13
Регистрация: 15.05.2013
Сообщений: 1,313
25.05.2016, 19:30  [ТС] 3
Цитата Сообщение от Sergey Yermak Посмотреть сообщение
Код страницы можно взять так:
Цитата Сообщение от Sergey Yermak Посмотреть сообщение
Только будет без DOCTYPE
В браузерах новее чем IE9 весь HTML можно взять так:
меня интересует не взятие html-кода, это я уже показал выше, с помощью jquery.
Интересует вывод этого кода в доступной форме в блок
0
123 / 62 / 37
Регистрация: 22.05.2016
Сообщений: 174
25.05.2016, 19:39 4
Да, просмотрел)
В блок можно вставить например так:
Javascript
1
2
    var elem = $('<div></div>');
    elem.text(new XMLSerializer().serializeToString(document));
Тут например новый блок создается, можно аналогично в другой вставить
0
27 / 41 / 13
Регистрация: 15.05.2013
Сообщений: 1,313
25.05.2016, 20:04  [ТС] 5
Цитата Сообщение от Sergey Yermak Посмотреть сообщение
var elem = $('<div></div>'); elem.text(new XMLSerializer().serializeToString(document));
код работает, но если вставить тег <pre> перед new XMLSerializer().serializeToString(document)
то браузер начинает как-то глючить

Добавлено через 1 минуту
Javascript
1
'<pre>'+new XMLSerializer().serializeToString(document)+'</pre>'
версия браузера новая

Добавлено через 13 минут
а на русском в двух словах можете обьяснить, что делает XMLSerializer() ?
0
123 / 62 / 37
Регистрация: 22.05.2016
Сообщений: 174
25.05.2016, 20:21 6
Он служит для преобразования элементов к строковому виду, метод serializeToString как раз это делает

Добавлено через 11 минут
Javascript
1
'<pre>'+new XMLSerializer().serializeToString(document)+'</pre>'
Так думаю лучше не делать, строки из XMLSerializer все равно преобразуются в элементы, знаю можно jQuery функцию text использовать, как в моем примере выше
1
супермизантроп
Эксперт JS
3935 / 2974 / 691
Регистрация: 18.04.2012
Сообщений: 8,623
25.05.2016, 20:41 7
phpk, используйте два подряд метода replace () -- сначала замените все <, затем все >
1
27 / 41 / 13
Регистрация: 15.05.2013
Сообщений: 1,313
25.05.2016, 20:54  [ТС] 8
Цитата Сообщение от kalabuni Посмотреть сообщение
phpk, используйте два подряд метода replace () -- сначала замените все <, затем все >
благодарю за совет, но хотел узнать, а разве нельзя так, как я привёл пример выше одним вызовом replace?
Javascript
1
2
reg=/(\<)(\/?.*?)(\>)/ig
var res=text.replace(reg,'&lt;$2&gt;');
0
супермизантроп
Эксперт JS
3935 / 2974 / 691
Регистрация: 18.04.2012
Сообщений: 8,623
25.05.2016, 21:14 9
Цитата Сообщение от phpk Посмотреть сообщение
хотел узнать, а разве нельзя так, как я привёл пример выше одним вызовом replace?
можно, наверно, но зачем, если есть решение проще?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.05.2016, 21:14
Помогаю со студенческими работами здесь

Построчное копирование текста из документа в документ
Буду признателен за помощь. Нужно построчно скопировать текст из одного документа и вставить в...

Программно создать документ на основании другого документа
Здравствуйте. Есть документ &quot;Образец заполнения&quot;. Есть внешняя обработка, в которой пользователь...

Документ продажа вводиться на основании документа счет
У документа продажа товаров есть реквизит ПоСчету Тип ДокументСсылка.Счет Документ продажа...

Обработка документа word на серверной стороне. Не открывается документ
Задача: в серверной части запускается word, открывается файл, записывается туда то, что нужно....

Как защитить документ от копирования текста и пересохранения документа?
Нужно сделать так,чтобы документ можно было открыть и прочитать текст,но его нельзя было бы...

Заполнить документ именами владельцев по их номеру из другого документа...
Excel Есть два документа 1....... _____________________________...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru