2011-03-23 28 views
8

¿Cómo puedo obtener la última línea de texto HTML con Javascript?Obtener la última línea de HTML con Javascript

Por ejemplo, una solicitud HTML devuelve esta respuesta:

<span>blah blah blah 
ha ha ha ha 
tatatatata 

¿Cómo puedo obtener la última línea "tatatatata"?

+0

Lo sentimos, el post no incluía mis saltos de línea, pero debería haber uno entre los blahs, ha's an ta – Joe

+0

Edité tu publicación para agregar el formato. –

Respuesta

7
var html = document.getElementById('some_element').innerHTML.split(/\r?\n/); 
alert(html[html.length - 1]); 

Dividir por /\r?\n/ para romper el HTML en línea, a continuación, coger el último elemento de la matriz.

Nota: como se trata de HTML, es posible que desee dividir por /<br(?: \/)?>/ o /<br>/, dependiendo de la situación.

0

Puede leer todas las etiquetas HTML, hacer una división() en saltos de línea y obtener el último elemento de la matriz.

0

Puede utilizar JavaScript de lastIndexOf, así:

var your_html = 'blah<br />ha ha<br />tata'; 
var newline_mark = '<br />'; 
var last_br_position = your_html.lastIndexOf(newline_mark); 
var last_line; 
if (last_br_position == -1) 
    last_line = your_html; 
else 
    last_line = your_html.substr(last_br_position + newline_mark.length); 
+0

esto supone que sus líneas están divididas por '
'. si no, simplemente cambie la variable 'newline_mark' – cambraca

0

Suponiendo que sólo hay una <span> en la página ....

var lines = document.getElementsByTagName("span")[0].innerText.split("\n"); 
alert(lines[lines.length-1]); 
1
$('#your_span').html().split(/\r?\n/).pop() 

https://www.w3schools.com/jsref/jsref_pop.asp

+0

Considere expandir su respuesta para explicarle al solicitante por qué esto logra el resultado deseado, posiblemente vinculándolo a la documentación. Como es, esto solo es marginalmente útil. –

Cuestiones relacionadas