說明:程式碼在實際專案中測試通過,我已經省去些不重要的,大家可以重點看顏色標記的部分
前戲:
Q:為什麼要做這個呢? ?
答:項目中有個將輸入的文本域文字儲存到資料庫中。 '查看時'從資料庫取得對應數據,顯示在文字域中。開發期間發現換行符使用jquery 的val() 還是text()取得後不做處理,保存資料庫中沒有換行了,自然取出來顯示也就沒有換行符了!由此寫了下面的文章…………有點嗦!
複製代碼代碼如下:
<%@ page contentType="text/html;charset=UTF-8" %>
<script type="text/javascript">
// 文字域換行處理
// 初始化時將後台傳回的資料經行處理,將@@@@替換成換行符號/n/r
$(document).ready(function(){
var content = '從背景取得的值';
if(content !='' ){
// 全域替換
content = content.replace(/@@@@/g,'/n/r');
$("#content").attr("value",content);
}
});
// 提交儲存時將換行符號/n/r換成@@@@
function doSubmit() {
var content = $("#content").val().replace(//n/g,"@@@@");
if(content == null || content==""){
alert("請填寫備註說明!");
return;
}
$("#updateForm").attr("method","get");
$("#updateForm").attr("action", url);
$("#updateForm").submit();
}
</script>
<div>
<div>
<div>
<div><p><font face="華文行楷" size="10">約談方案</font></p>
</div>
<div>
<div> 方案<br><hr></div>
<div>
備註說明:
<div >
<textarea id="content" rows="15" cols="50"></textarea>
</div>
</div>
</div>
<div >
<a id="submit_btn" onclick="doSubmit();">保存</a>
</div>
<form id="updateForm" method="get">
</form>
</div>
</div>
</div>