2010年4月2日 星期五

js 取得 TextArea 的換行控制碼

可能是年紀大了,竟然為了找一個很簡單的東西,卻花了好久的時間。

我有一個 TextArea 的控制項,需要將裡面的內容存到另一個 Div 裡。如下圖所示:
可以很明顯發現,原本在 TextArea 裡有換行的內容,卻在 Div 裡全部擠在一起了。這問題的解法,就是要抓到 TextArea 的換行控制碼,並將這控制碼用 <BR> 來取代。

關鍵的指令就是: replace(/\n/g,"<br>")

/ ... / :是指正規表示式
g : 一直替換到最後

說穿了沒甚麼,但要是忘了,就要找好久。

將測試的程式整理如下:

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>未命名頁面</title>
    <script type="text/javascript" src="js/jquery-1.3.2.js"></script>
    <script>
    function ShowMsg()
    {
        var vMsg=document.getElementById("tbxInput").value;       
        $("#divContent").html($("#tbxInput").html().replace(/\n/g,"<br>"));
    }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        TextBox:<br />
        <asp:TextBox ID="tbxInput" runat="server" Rows="5" TextMode="MultiLine" style="width:250px"></asp:TextBox>
        <input id="btnShow" type="button" value="轉入" onclick="ShowMsg();" /></div>
        <br />
        DIV:
    <div id="divContent" style="border-width:1; border-color:Black; background-color:Aqua; width:250px"></div>
    </form>
</body>
</html>

完成後的結果:

參考文章:http://www.xue163.com/html/2009121/2522346.html

沒有留言:

張貼留言