Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

314
Visualizações
¿Hay alguna forma de hacer el mismo papel que el método .load () en jquery para obtener parte de la página html con vainilla Javascript?

Estoy aprendiendo Ajax ahora y tengo problemas para encontrar videos o artículos que usan solo javascript para hacer cosas que hace jquery. Para cargar aparte de una página HTML y ponerla en la página, usando jquery es así:

 $(function () { $("#showData").load("pageName.html #whatIWant"); });

Y los datos en #whatIWant estarán en el elemento con la identificación #showData. No sé cómo hacer lo mismo con Vanilla Js gracias por su participación.

NOTA: si uso el método a continuación, obtengo todos los datos de la otra página y quiero controlar la respuesta.

 const getData = (url) => { return new Promise((resolve, reject) => { let request = new XMLHttpRequest(); request.onload = function () { if (this.readyState === 4 && this.status === 200) { resolve(this.responseText); } else { reject(this.responseText); } }; request.open("get", url, true); request.send(); }); }; getData("test.html") .then((resolve) => { console.log(resolve); }) .catch((reject) => { console.error(reject); });
over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Puede usar el XMLHttpRequest incorporado para obtener un documento HTML.

 function fetchElement(url, selector) { return new Promise((resolve, reject) => { const xhr = new XMLHttpRequest(); xhr.onload = function() { if (!this.responseXML || !this.responseXML.querySelector) reject("No HTML Document found"); else resolve(this.responseXML.querySelector(selector)); } xhr.open('GET', url); xhr.responseType = 'document'; xhr.send(); }); } const myElement = await fetchElement("pageName.html", "#whatIWant"); document.querySelector("#showData").innerHTML = ""; document.querySelector("#showData").appendChild(myElement);

Alternativamente, también puede usar la API Fetch para obtener la página web, junto con DOMParser para analizarla.

 async function fetchElement(url, selector) { const data = await fetch(url).then(res => res.text()); const parsed = new DOMParser().parseFromString(data, 'text/html'); return parsed.querySelector(selector); }
over 4 years ago · Santiago Trujillo Relatório

0

Hay otra forma que encontré cuando buscaba respuestas.

 let dom = new DOMParser(); const getData = (url) => { return new Promise((resolve, reject) => { let request = new XMLHttpRequest(); request.onload = function () { if (this.readyState === 4 && this.status === 200) { resolve(this.responseText); } else { reject(this.responseText); } }; request.open("get", url, true); request.send(); }); }; getData("test.html") .then((resolve) => { let pageHtml = dom.parseFromString(resolve, "text/html"); let element = pageHtml.querySelector("whatIWant"); console.log(element); }) .catch((reject) => { console.error(reject); });

Esta respuesta y la otra funcionan para mí, espero que estas respuestas ayuden a alguien.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda