2010-06-02 75 views
0

文本我想從一些字符串我的文字區域替換一些選定的字符。 爲此我寫了下面的JavaScript代碼更換使用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

你可能想這樣做:

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

replace沒有任何副作用:它返回一個新字符串,所以你需要指定它保持了更換左右。