關於textarea中換行 回車 空格的識別與處理

2021-09-25 19:54:04 字數 1557 閱讀 6929

###需求:

在textarea中輸入文字,提交給後台後,後台輸出在另乙個頁面,文字按原格式顯示。

###相容性:

ie9以上、ff、chrome在換行處匹配/\n/ ie7-8在換行處先匹配/\r/,再匹配/\n/

###問題解決:

1、把\n \r\n \s 分別替換為  

這種情況是替換後的字串能夠被網頁解析,這樣在網頁上就能看到換行、空格等特殊字元了。

具體實現:

//原始字串

//替換所有的換行符

string = string.replace(/\r\n/g,"

") //相容i7、i8

string = string.replace(/\n/g,"

"); //i9及以上

//替換所有的空格(中文空格、英文空格都會被替換)

string = string.replace(/\s/g," ");

//輸出轉換後的字串

console.log(string);

如果你要替換為空時可以這樣寫

//原始字串

//去掉所有的換行符

string = string.replace(/\r\n/g,"")

string = string.replace(/\n/g,"");

//去掉所有的空格(中文空格、英文空格都會被替換)

string = string.replace(/\s/g,"");

//輸出轉換後的字串

console.log(string);

2、把\n \r \s 分別替換為ascii碼的chr(10)、chr(13)、chr(32)

這種情況是替換成html標籤後的字串不能夠被網頁解析,這樣在網頁上就只看到一串字串而已,而替換成ascii碼則可以在任何地方顯示出換行、空格。

具體實現:(js)

//原始字串

//去掉所有的換行符

string = string.replace(/\r/g,string.fromcharcode(13))

string = string.replace(/\n/g,string.fromcharcode(10));

//去掉所有的空格(中文空格、英文空格都會被替換)

string = string.replace(/\s/g,string.fromcharcode(32));

//輸出轉換後的字串

console.log(string);

###注意:

1、var str=『aabbccaa』; str=str.replace(『aa』,『dd』);

使用replace方法替換字串用上面的寫法,它只替換第一次出現的,之後不在替換。如果你要替換全部,要使用正則寫法:str=str.replace(/aa/g,『dd』);

2、使用document.getelementbyid(「ts」).value.indexof("\n");可以獲取字串出現的第一次的位置,通過這個可以判斷字串是否存在。

textarea框回車轉換行

可是發現乙個問題,在textarea框裡輸入一段回車後,回車後面的文字在前台顯示不出來。檢視json資料 n n,兩個 n之間有乙個回車換行,可是看不見符號,tk在json資料這樣做之後,就沒有問題了 strtr row content array r n n strtr使用 string strt...

C 關於回車和換行

1.關於 回車 carriage return 和 換行 line feed 這兩個概念的來歷和區別。在計算機還沒有出現之前,有一種叫做電傳打字機 teletype model 33 的玩意,每秒鐘可以打10個字元。但是它有乙個問題,就是打完一行換行的時候,要用去0.2秒,正好可以打兩個字元。要是在...

textarea 換行問題

textarea 換行問題 我們一般在頁面上填寫比較多的資料時,一般用 textarea,但這時會有乙個問題,即內容過多時,如何換行問題,也就是怎樣讓資料存入資料庫及從資料庫中讀取到頁面上顯示時,與當初輸入的格式一樣,一般都是用如下的方法來解決 存入資料庫 public class opera ch...