window.clipboardData.getData("Text").replace(/\t/g, "    ");

解决方案 »

  1.   

    是不是这样呀。但是不行的。用onbeforepaste也不行
    <script>
    function Tab(){
    window.clipboardData.getData("Text").replace(/\t/g, "    ");
    }
    </script>
    <form name="frm">
    <textarea name="txt" rows="20" cols="80" onpaste="Tab()"></textarea>
    </form>
      

  2.   

    <textarea name=txt></textarea><input type=button value=ok
     onclick='txt.value = window.clipboardData.getData("Text").replace(/\t/g, "    ")'>我这里测试通过: win2000 server + IE6
      

  3.   

    <script>
    function Tab(){
    window.clipboardData.setData("Text", window.clipboardData.getData("Text").replace(/\t/g, "    "));
    }
    </script>
    <form name="frm">
    <textarea name="txt" rows="20" cols="80" onpaste="Tab()"></textarea>
    </form>
      

  4.   

    tab为什么会变成空格???
    为什么要把tab给replace成空格???
    “原来的tab键的4个空格”是什么意思??JK迷惑中
      

  5.   

    to JK_10000(JK1):是一个纯粹个人喜好问题比如InterDev默认显示tab为4个空格位置
    而我喜欢的UltraEdit则显示为8个而且大多数编辑器都有把tab转成空格的功能.(某些场合你也会要哦)
      

  6.   

    tab键<---->4个空格这只是一个解释的问题,tab并不等于四个空格,只是在显示的时候就按四个四个的来"制表",不少编辑器可以修改这个设定,比如jbuilder。可以让一个tab键解释的最大宽度为四个空格,也可以改成八个空格,但是无论多少个空格,把它copy到一个html的input框里,都是最大宽度是八个空格的宽度,但是它事实上还是一个tab,并不是四个空格啊。
    要是真的想把它解释成最大宽度为四个空格宽度的样子,也应该是修改style属性或是修改internet先项属性,-----去replace好像不大恰当,因为replace后就没“制表”的功能了----我找了找style属性,似乎没有这个设定<input name=a value="1 1">
    <input type=button value=ok onclick="a.value=a.value.replace(/ /g,'     ');">