nl2br jQuery函数从每行中删除字符

时间:2012-06-15 07:03:11

标签: jquery html javascript nl2br

我有这个非常简单的br2nl函数,我用它来取一个字符串并将其粘贴在textarea中。出于某种原因,它会从某些线条的末端裁剪掉一些角色。这是我的例子: http://jsfiddle.net/byZnE/

在这个例子中,你会看到“。” (期间)正在从文本区域的句子中删除(“关于信息的测试可以到这里。”)。为什么会发生这种情况,我可以在功能上改变什么来阻止它呢?

1 个答案:

答案 0 :(得分:0)

代码中的这一行存在问题:

return (str + '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, breakTag);

你在这里做的是在行终止符之前替换两个符号,如果它不是'>',则替换行终止符。

但这很容易解决:只需将其更改为......

return (str + '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1' + breakTag);

而且,在我看来,str + ''在这里是多余的。