Извлечь специфику c HTML контейнер из Javascript переменной - PullRequest
0 голосов
/ 02 мая 2020

Как бы вы извлекли указанную c html из JS переменную, которая содержит html содержимое.

В приведенном ниже примере переменная JS содержит все содержимое html, которое было возвращается из запроса Fetch API. Я хочу просто извлечь содержимое из раздела с классом content.

Переменная

const aVariable = fetch(...etc.. etc.. // the returned value)

Возвращаемое значение содержит:

<section class="wrapper">
    blah blah blah
    <div>
        blah blah
    </div>
    <section class="content">
        It's the one that I want
        <div>
            Whoa whoa whoa yeah!
        </div>
    </section>
    blah blah
</section>

Я просто хочу content, но включаю его <section>.

Ответы [ 4 ]

2 голосов
/ 02 мая 2020

Использование DOMParser.

var parser = new DOMParser();
var doc = parser.parseFromString(aVariable, "text/html");
var elm = doc.querySelector(".content");
1 голос
/ 02 мая 2020

Вы можете использовать интерфейс DOMParser

Интерфейс DOMParser позволяет анализировать исходный код XML или HTML из строки в Документ DOM.

const html = `<section class="wrapper">
    blah blah blah
    <div>
        blah blah
    </div>
    <section class="content">
        It's the one that I want
        <div>
            Whoa whoa whoa yeah!
        </div>
    </section>
    blah blah
</section>`


const domparser = new DOMParser()
const doc = domparser.parseFromString(html, 'text/html')

const elem = doc.querySelector('section.content')

console.log(elem.outerHTML)
0 голосов
/ 02 мая 2020

Это должно работать

var all= new DOMParser().parseFromString(aContent) ;

var contentHtml = all.querySelector('.content').outerHTML

0 голосов
/ 02 мая 2020

это должно работать!

  var data= $(html);

  var content= data.children('#content').html();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...