當我們在頁面上通過 textarea 提交資料的時候,我們我們輸入的內容在提交後都會被處理為了一段內容,即使我們在 textarea 裡面輸入了很多的換行,提交後也是一段內容,那如果我們需要將我們輸入的資訊按照輸入的形式儲存下來該如何做呢?
這裡面存在一個主要的問題是在頁面顯示的時候分行符號是 <br /> 標籤,而內容在 textarea 中顯示時的分行符號是 \n ,下面介紹一種方法通過 js 將輸入的內容中的分行符號轉換為網頁中的分行符號。在網頁資料提交錢作如下處理即可。
複製代碼 代碼如下:
<script type="text/javascript">
//斷行符號轉換行
var content=document.getElementById("content").value;
content=content.replace('\n','<br />');
document.getElementById("content").value=content;
//然後提交
</script>
在頁面中顯示的時候同樣需要經過一下處理,與以上處理過程正好相反:
複製代碼 代碼如下:
content=content.replace('<br />','\n');
下面對 js 的 replace 函數做一下解釋:
文法:
stringObject.replace(regexp/substr,replacement)
replace() 方法用於在字串中用一些字元替換另一些字元,或替換一個與Regex匹配的子串。
一、替換單個字元
複製代碼 代碼如下:
<script language="javascript">
var str="javascript is a good script language";
alert(str.replace("a","A"));//輸出jAvascript is a good script language
</script>
二、替換字串中存在的指定的所有字元(全部替換)
複製代碼 代碼如下:
<script language="javascript">
var str="javascript is a good script language";
alert(str.replace(/a/g,"A"));//輸出jAvAscript is A good script lAnguAge
</script>
上述的/g,是Regex,這說明,在replace()還可以使用Regex。
當然 replace 還有更進階的用法,大家可以相關文檔擷取更多更多的進階用法。