簡體   English   中英

用。替換多行文本框中的換行符<br/>

[英]Replacing newline in multiline textbox with <br/>

我試圖使用多行文本框將文本插入到顯示為html的表中。 我想用javascript取文本框內的文本並找到用戶按下的位置並在該位置放置“ <br/> ”,這樣當顯示文本時它將顯示換行符。 有關如何做到這一點的任何想法?

我試過這樣的東西,但它沒有用。

var text = document.getElementById("announcementid").value;


            var newtext = text.replace("\n", "<br/>");

            text = newtext;

newtext變量最終是來自announcementid元素的原始字符串的副本 因此,您需要在原始文檔元素上重新設置value屬性:

  var text = document.getElementById("announcementid").value;
  var newtext = text.replace(/\n/g, "<br />");
  document.getElementById("announcementid").value = newtext; 

此外,正如Konstantin所指出的,除非傳入全局正則表達式,否則Javascript中的replace()函數將替換第一個實例。

小提琴的例子

文本是原始的,因此它不會替換值。 使用正則表達式進行全局替換而不是僅替換第一個實例:

var text = document.getElementById("announcementid").value;
var newtext = text.replace(/\n/g, "<br />");
document.getElementById("announcementid").value = newtext;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM