在 textarea 中輸入回車符,提交表單時,傳給後臺的是 '\n' 或者 '\r\n'(在IE下,換行符傳入\r\n;在Firefox和谷歌瀏覽器下,換行符只傳入了\n)。html
樓主也作了一個案例,讓 textarea 裏的值和 div 裏的值相互轉換,如圖:瀏覽器
html 代碼:spa
<textarea id="test1"></textarea> <input type="button" id="submit1" value="提交"> <div id="test2"></div> <input type="button" id="submit2" value="提交"> <textarea id="test3"></textarea>
在 test1 中輸入一個 abc,而後換行再輸入 abc,點擊第一個提交,在 test2 中顯示 test1 的值,不處理的話,結果是'abc abc',換行符在 test1 裏顯示一個空格符而已,處理辦法是:code
$('#submit1').on('click', function () { var text = $('#test1').val(); $('#test2').html(text.replace(/\r/ig, "").replace(/\n/ig, "<br>")); })
經過兩次替換(處理上面提到的瀏覽器兼容問題)就能把換行符換成 '<br>'。htm
而後再把 test2 裏的內容顯示在第二個 textarea 裏,也就是把 '<br>' 再換成 '\r\n' 就行。blog
$('#submit2').on('click', function () { var text = $('#test2').html(); $('#test3').val(text.replace(/<br\s*\/?\s*>/ig, '\r\n')); })
'<br\s*\/?\s*>' 表示 br 標籤,<br>是HTML寫法,<br/>是XHTML1.1的寫法,也是XML寫法,<br />是XHTML爲兼容HTML的寫法,也是XML寫法。input