我想在textarea中替换两个(或更多)换行符,但它总是被困在一个无限循环中
这里是:
var dateinput = document.getElementById("date");
var intIndexOfMatch = dateinput.value.indexOf('\n\n');
while (intIndexOfMatch != -1){
dateinput .value = dateinput .value.replace('\n\n', '\n');
}
答案 0 :(得分:3)
因为您没有更改intIndexOfMatch
var dateinput = document.getElementById("date");
var intIndexOfMatch = dateinput.value.indexOf('\n\n');
while (intIndexOfMatch != -1){
dateinput .value = dateinput .value.replace('\n\n', '\n');
intIndexOfMatch = dateinput.value.indexOf('\n\n');
}
更好的解决方案
var dateinput = document.getElementById("date").value.replace(/\n{2,}/g, '\n');
顺便提一下,替换你的整个代码