如果是敲的回车键就转换为tab,如果是ctrl+回车就在文本区中执行换行,该怎么做呢

解决方案 »

  1.   

    在onkeydown事件里判断event.keyCode修改returnValue
      

  2.   

     if (event.ctrlKey && event.keyCode == 13)
            event.keyCode = 13;
        else if (event.keyCode == 13)
            event.keyCode = 9;这样写,ctrl+回车并没有起到回车换行的作用
      

  3.   

    <textarea id="a" onkeydown="b()"></textarea><script>
    function b(){
    if (event.ctrlKey && event.keyCode == 13){
      event.returnValue=false;
    a.value+="\n";
    }
      else if (event.keyCode == 13)
      event.keyCode = 9;}
    </script>
      

  4.   

    额。。 这样写会有点小BUG
     就是光标不在最后的话……
      

  5.   

    <textarea id="a" onkeydown="b()"></textarea><script>
    function b(){
    if (event.ctrlKey && event.keyCode == 13){
      document.selection.createRange().text="\n";
    }
      else if (event.keyCode == 13)
      event.keyCode = 9;}
    </script>
    IE下先这样用吧
      

  6.   

    这个好象在IE6下也不行,第一次CTRL+ENTER没效果,第二次才有!很怪异,火狐狸的话,连e.keyCode都无法设置属性!看来这个问题真的不简单啊!关注!