使用JavaScript替换文本

时间:2010-06-02 11:47:20

标签: javascript regex text replace selected

我想用一些字符串替换文本区域中的某些选定字符。 为此,我编写了以下JavaScript代码

            var old_tag = "[";
         var tag= " <xsl:value-of select = ";
      var endtag= " />";
var txt='';

if(document.selection)
{
 txt = document.selection.createRange().text
 document.selection.createRange().text = txt.replace(/\[/g, tag);
 document.selection.createRange().text = txt.replace(/\]/g, endtag);

}

但是这段代码在一行中替换一个字符而在另一行中替换另一个字符。对于两行替换代码,它显示四行。

Plz改进了这段代码,这样我就可以在一行中完成我的工作。

由于

1 个答案:

答案 0 :(得分:1)

你可能想做类似的事情:

txt = document.selection.createRange().text;
txt = txt.replace(/\[/g, tag).replace(/\]/g, endtag);
document.selection.createRange().text = txt;

replace没有任何副作用:它会返回一个新字符串,因此您需要指定它以保持更改。