строка содержит html код
Подскажите, наиболее рациональное решение:
Имеется строка содержащая весь html-код страницы. В этом коде есть <div id='stage'>...</div>. Каким образом можно получить содержимое данного контейнера? Как я понимаю регулярками здесь тяжеловато выделить. Либо воссоздать document.documentElement и через stage.innerHTML получить содержимое? |
const cont = document.createElement('template');
cont.innerHTML = '...<div id='stage'>...</div>...';
const result = cont.content.getElementById('stage').innerHTML;
|
Огромное спасибо!
|
Но если в строке полный код html начиная с <!DOCTYPE html>
то будет правильнее создавать полный документ
const doc = document.implementation.createHTMLDocument('');
doc.documentElement.innerHTML = '...<div id='stage'>...</div>...';
const result = doc.getElementById('stage').innerHTML;
|
Dmitriy154,
let parser = new DOMParser();
let html = `...<div id='stage'>12345</div>...`;
let doc = parser.parseFromString(html, "text/html");
alert(doc.getElementById('stage').innerHTML);
|
Спасибо, тоже интересный подход
|
Цитата:
|
| Часовой пояс GMT +3, время: 16:57. |