[英]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.