Lets say I have a textarea with this text:
The regex split is behaving strangely in IE8 and lower. Use a string comparison instead and it seems to work (fiddle)
testText.split("\n")
rather than
testText.split(/\n/)
[Edit] From Steven Levithan's Blog:
Internet Explorer excludes almost all empty values from the resulting array (e.g., when two delimiters appear next to each other in the data, or when a delimiter appears at the start or end of the data)
I see the same screwy behavior in IE with .split()
and new lines. You can use your own split function to control it more closely:
function mySplit(str, ch) {
var pos, start = 0, result = [];
while ((pos = str.indexOf(ch, start)) != -1) {
result.push(str.substring(start, pos));
start = pos + 1;
}
result.push(str.substr(start));
return(result);
}
Working example here: http://jsfiddle.net/jfriend00/xQTNZ/.
Possible duplicate of JavaScript: split doesn't work in IE? ? Internet Explorer excludes almost all empty values from the resulting array (e.g., when two delimiters appear next to each other in the data, or when a delimiter appears at the start or end of the data).