2011-04-06 17 views
5

Ben bir ön elemanın hatlarının # saymak çalışıyorum ve bu kullanıyorum:javascript maç() hata

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

çalıştığını, ancak bazı durumlarda bir hatayı olsun

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

... Neden

bu sadece belirli sayfalarda olur, ancak bu sayfalar elbette içeriği yanında, üzerinde çalıştığı olanlardan farklı bir şey yok mu?

+1

Bu soru cevap (http://stackoverflow.com/questions/2035910/how-to-get-the- bir-in-a-textarea satır sayısı) çapraz tarayıcı sert dönüşleri eşleştirmek için bir regex vardır. – Mottie

cevap

7

Bu, herhangi biriyle eşleşemediği anlamına gelir ve null, length özelliğine sahip değildir.

Yani bu deneyin ...

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.