2009-12-30 35 views
17

Tengo un archivo html que me gustaría abrir y leer, pero no estoy muy seguro de cómo hacerlo ... Básicamente, es un archivo bastante grande (big.html) y, en un archivo separado file (titles.html), tengo un código jquery que me gustaría usar para encontrar ciertos elementos (a saber, etiquetas h2) y obtener el texto interno de esas etiquetas y escribir ese texto en titles.html ... I No estoy seguro, particularmente, de cómo abrir un archivo separado y leer de él, y en segundo lugar, no estoy seguro de si el código siguiente funcionará cuando se trate de obtener el texto dentro de las etiquetas h2 ...jquery - ¿Leer un archivo de texto?

$(document).ready(function() { 
    $("h2").each(function() { 
     var title = $(this).text(); 
     $("#mydiv").append(title); 
    }); 
}); 

... 

<div id="mydiv"></div> 

Estoy un poco confundido sobre cómo hacer eso con jquery ... Soy bastante nuevo en todo esto, así que ni siquiera estoy seguro de que sea posible ...

+0

tienen un langauge del lado del servidor disponibles? Esa puede ser una mejor opción. –

Respuesta

25

jQuery proporciona un método $.get que puede capturar los datos de una URL. Entonces, para "leer" el documento html/text, debe ser accesible a través de una URL. Una vez que recuperas el contenido HTML, deberías poder ajustar ese marcado como un conjunto envuelto jQuery y buscarlo como siempre.

no probado, pero la esencia general de la misma ...

var HTML_FILE_URL = '/whatever/html/file.html'; 

$(document).ready(function() { 
    $.get(HTML_FILE_URL, function(data) { 
     var fileDom = $(data); 
     fileDom.find('h2').each(function() { 
      alert($(this).text()); 
     }); 
    }); 
}); 
+0

Intenté algo como esto (y luego, esto) y acabo de obtener un error ... la cuota de espacio de la pila de scripts está agotada ... entonces, ¿supongo que el archivo es demasiado grande? – phpN00b

+1

Wow ... ¿Qué tan grande (bytes) es el archivo? Puede intentar cargarlo en pedazos con una serie (o ciclo) de declaraciones como la proporcionada en el ejemplo anterior. – cjstehno

4

Una solución sería "leer" en el segundo documento poniéndolo en un iframe oculto. Luego puede acceder al HTML en ese iframe como se indica en here y hacer lo que quiera con esa información.

Cuestiones relacionadas