Estoy usando PHP y un comando ajax para tomar todo el contenido HTML de una página web externa (a través del comando PHP file_get_contents()
) y pasar ese HTML a una variable de JavaScript. Una vez que tengo los contenidos HTML de la página almacenados en una variable, ¿puedo usar jQuery para interactuar con el contenido de esa variable, de la misma manera que jQuery normalmente interactúa con el DOM? En este ejemplo, estoy tratando de buscar la existencia de ciertos elementos HTML (etiquetas <div>
y <script>
) con atributos de ID específicos. ¿Alguien puede sugerir cómo puedo lograr esto?¿Puede jQuery analizar HTML almacenado en una variable?
Respuesta
Si te entiendo correctamente, deberías poder pasar la variable a la función jQuery y trabajar en consecuencia.
Un ejemplo rápido con .filter()
:
$(myHtml).filter('#someid').doStuff();
sólo tiene que pasar como una cadena al constructor jQuery.
var foo = jQuery('<p><b>asd</b><i>test</i></p>').
alert(foo.find('i').text());
Sí. Y aunque eso no esté disponible, podrías hacer un div invisible y luego analizarlo allí.
Incluso puede usar JS nativo para hacer esto. En este caso, añadir el nuevo HTML a un div oculto mediante el uso de su propiedad innerHTML así:
document.getElementById('hidden_div_id').innerHTML = myHTML;
Una vez que se añade el nuevo HTML, se puede caminar a través de nodos utilizando cualquier método que desee.
Simplemente inyéctelo en un div oculto y manipule lo que necesita de allí.
var myHTML;//variable with html from php
var $hiddenDIV = $('<div></div>').hide().appendTo('body').html(myHTML);
/*Now you can traverse the contents of $hiddenDIV.
* If you need to get the contents back:
*/
var newHTML = $hiddenDIV.html();
Si lo hiciera, ¿cómo evitaría que se ejecutara el javascript del HTML de la página web externa? – jake
Bueno, podrías eliminar el javascript del html y almacenarlo en otra variable, o si no necesitas el javascript para tus propósitos, entonces podrías eliminarlo por completo. Avíseme si necesita ayuda para escribir ese guión. – UpHelix
@jake - sin embargo, este enfoque podría ser una exageración. Usaría el enfoque de BoltClock. – UpHelix
- 1. analizar cadena html con jquery
- 2. ¿Cómo manipular HTML dentro de una variable jQuery?
- 3. Crear una variable en jquery con contenido html
- 4. ¿Se puede usar una variable de JavaScript en HTML simple?
- 5. PHP analizar HTML
- 6. Incrustar datos brutos en HTML para analizar en jQuery
- 7. Cómo obtener el elemento secundario de un objeto jQuery almacenado en una variable
- 8. jQuery ¿Buscar texto en una variable?
- 9. Firefox no puede analizar cadena JSON en jQuery Respuesta AJAX
- 10. ¿Es posible convertir una variable en un tipo almacenado en otra variable?
- 11. ¿Cómo ejecutar el comando almacenado en una variable?
- 12. Ejecutando un comando almacenado en una variable de Powershell
- 13. Rendering HTML en variable usando Jade
- 14. Cómo se puede analizar un documento almacenado en el formato MARC 21 con Python
- 15. Cómo mostrar una variable php en html
- 16. Cómo analizar HTML mal formado en python
- 17. jQuery no puede agarrar html val contenteditable
- 18. procedimiento almacenado con número variable de parámetros
- 19. ¿Cómo puedo analizar una cadena HTML en Java?
- 20. Cómo analizar matriz JSON en jQuery?
- 21. Cómo analizar HTML desde JavaScript en Firefox?
- 22. Tagsoup no puede analizar el documento HTML de una StringReader (Java)
- 23. Cómo comparar una entidad HTML con jQuery
- 24. Cómo comprobar si el tipo de variable coincide con Tipo almacenado en una variable
- 25. Usar una variable PHP en JQuery
- 26. No se puede acceder a la variable de la tabla en el procedimiento almacenado
- 27. Ignorar caracteres HTML al buscar contenido HTML almacenado PHP/MySQL?
- 28. ¿Puede un XSLT analizar una cadena de texto?
- 29. Rendering una variable de plantilla como HTML
- 30. ¿Puede una interfaz contener una variable?
Solo para aclarar, quiero usar jQuery para extraer los datos * de * la variable que contiene los contenidos HTML de la página web externa. – jake