2011-04-06 9 views
5

estoy tratando de contar # de líneas de un elemento pre y estoy usando esto:Javascript partido() Error

var numlines = $('#mypreelement').text().match(/\n\r?/g).length + 1; 

funciona, pero en algunas situaciones me sale un error de

Error: $('#mypreelement').text().match(/\n\r?/g) is null

esto sólo ocurre en ciertas páginas, pero estas páginas no tienen nada diferentes a las de los que se trabaja, además de contenido, por supuesto ...

¿por qué?

+1

La respuesta de esta pregunta (http://stackoverflow.com/questions/2035910/how-to-get-the- number-of-lines-in-a-textarea) tiene una expresión regular para hacer coincidir los retornos duros entre navegadores. – Mottie

Respuesta

7

Eso significa que no podría coincidir con ninguno de ellos, y null no tiene una propiedad de length.

Así que trate de esto ...

if (var lines = $('#mypreelement').text().match(/\n\r?/g) != null) { 
    var linesLength = lines.length + 1; 
} 
2

MDC RegExp Match

If the regular expression includes the g flag, the method returns an Array containing all matches. If there were no matches, the method returns null.

Cuestiones relacionadas