if(keyVal==27)
{
document.write ("<br>")
}????????????

解决方案 »

  1.   

    <html>
    <head>
    </head>
    <body>
    <form name=mm>
    <textarea name="dddd" cols="14" rows="3" id="dddd" onkeydown="javascript:okd(event,this)">line1
    line2
    line3
    line4</textarea>
    </form>
    <script language="javascript">
    document.onkeydown = function()
    {
      if(window.event.keyCode == 27)
      {
        document.mm.dddd.value = document.mm.dddd.value.replace(/\r\n/g, "<br>");
      }
    }
    </script>
    </body>
    </html>
      

  2.   

    我开始是用TextAreaElement.replace(/\\n/g,"<br>");
    有把回车符替换成<br>,可是显示的时候就是有问题.
    用meizz的方法/\r\n/g,就是显示回车替换成了<br>,却没有回车效果.
    我说不清楚.大概是这样的:
    在一个表中,有一个cell中有一个隐含的textarea,当点击这个cell的时候就显示这个textarea.并可以输入文本.当点击其它cell的时候就在隐含这个textarea,并把textarea中的值显示在这个cell(td element)中,显示也要分行的,所以要把回车符\n替换成<br>的原因.
    明白吗?
    meizz的方法就是显示这个:
    在textarea中输入:
    line1
    line2
    line3
    离开后显示:
    line1<br>line2<br>line3
    没有回车效果
      

  3.   

    是不是<br>变成&lt;br&gt;的原因?
      

  4.   

    不知像下面这样是不是你要的效果~<html>
    <head>
    </head>
    <body>
    <form name="frm">
    <textarea name="dddd" cols="14" rows="3" id="dddd" onkeydown="javascript:okd(event,this)">line1
    line2
    line3
    line4</textarea>
    </form>
    <script languate="javascript">
    function okd(e,taElm)
    {
    var keyVal = e.keyCode;
    if(keyVal==13)
    {
    document.frm.dddd.value = document.frm.dddd.value + "<br>";
    window.returnValue=false;
    }
    }
    </script>
    </body>
    </html>
      

  5.   

    还有下面这样不知是不是
    <html>
    <head>
    </head>
    <body>
    <form name="frm">
    <textarea name="dddd" cols="14" rows="3" id="dddd" onkeydown="javascript:okd(event,this)">line1
    line2
    line3
    line4</textarea>
    </form>
    <script languate="javascript">
    function okd(e,taElm)
    {
    var keyVal = e.keyCode;
    if(keyVal==27)
    {
       document.frm.dddd.value = document.frm.dddd.value.replace(/\r\n/g,"<br>");
       window.returnValue=false;
    }
    }
    </script>
    </body>
    </html>
      

  6.   


    <div align=left id=App style="background-color:#F7F7F7;height:380px;overflow:auto;width:100%;z-index:2" contentEditable></div>
    代替<textarea>
    然后用App.innerHTML传值到隐藏的<textarea>
      

  7.   

    To:gjd111686,你说的方法我不怎么明白,现在只能用<textarea>
    To:MyHxf,你的两种方法我也用了,都没有达到我的效果.
    主要是hidden的textarea要保留真实的值,即回车换行,和用户输入一致.而显示在cell中的值就要有回车换行的效果.
      

  8.   

    你若还想保持原有的回车效果的话, 你自己加上一点代码就好了. 灵活点运用吗!
    document.mm.dddd.value = document.mm.dddd.value.replace(/\r\n/g, "<br>\r\n");