用结束行替换Javascript中的字符

时间:2014-03-29 11:36:10

标签: javascript html jsp browser replace

在java脚本中我有一个字符串。我需要用一个结束行替换这个字符串中的每个'$'字符。我尝试了以下内容,

for(var i=0; i<textAreaText.length; i++)
{
if(textAreaText[i]=="$")
textAreaText=textAreaText.replaceAt(i,"\n")
}

document.getElementById("textArea").value=textAreaText;

function replaceAt:

   String.prototype.replaceAt=function(index, chare) {
      return this.substr(0, index) + chare + this.substr(index+chare.length);
   }

它适用于Google Chrome,但不适用于Internet Explorer。在Internet Explorer上,'$'替换为空格。当我将这个空间粘贴到记事本时,事实证明它实际上是一个终点线。我不知道Internet Explorer在想什么,但我需要一个跨浏览器解决方案。你能帮我吗?感谢。

注意:我使用的是Java Server Pages,此字符串最初是在java代码中分配的,但后来被复制为Java Script var。

1 个答案:

答案 0 :(得分:1)

使用:

var textAreaText = document.getElementById("textArea").value;
textAreaText = textAreaText.replace(/\$/g, "\n")
document.getElementById("textArea").value = textAreaText;

演示:http://jsfiddle.net/g4N3L/2