Estoy tratando de extraer un elemento del html con la función que tengo.
document.querySelector('#get_html').addEventListener('click', function () { var url = document.querySelector('#url_html'); var request = new XMLHttpRequest(); request.open("GET", url.value); request.send(); request.onload = function() { console.log(request.response); }; })tengo un input donde pongo la url de una pagina y la funcion me trae el html completo de la pagina
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <div class="offer"> <div class="card"></div> <div class="card"></div> <div class="card"></div> <div class="card"></div> </div> </body> </html>este es el html que me arroja, ahora lo que quiero es extraer ese elemento div con la clase de oferta
Puede usar parseFromString para obtener la cadena de la respuesta en un formato en el que pueda consultar el DOM.
var responseText = `<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <div class="offer"> <div class="card"></div> <div class="card"></div> <div class="card"></div> <div class="card"></div> </div> </body> </html>`; const parser = new DOMParser(); const doc = parser.parseFromString(responseText, "text/html"); console.log(doc.querySelector(".offer"));