-2

我目前正在研究用 java/jsp 编写的 web 内容管理系统。每当用户想要编辑 html 中的页面时,我希望用户可以保持 html 中的缩进格式。所以我现在的问题是,每次用户按 Tab 键时,它都会跳转到另一个表单元素或链接,而不是插入缩进。

例如,我希望用户能够这样输入(不使用空格键、  &thinsp、&ensp 或 &emsp):

<table>
     <tr>
         <td></td>
     </tr>
</table>

而不是这样:

<table>
<tr>
<td></td>
</tr>
</table>

有没有可以克服这个问题的代码?(我试图避免使用任何插件,因为我希望它独立于浏览器:D)

提前致谢!

4

1 回答 1

1
$(document).delegate('#textbox', 'keydown', function(e) {
    var keyCode = e.keyCode || e.which;

    if (keyCode == 9) {
        e.preventDefault();
        var start = $(this).get(0).selectionStart;
        var end = $(this).get(0).selectionEnd;

        // set textarea value to: text before caret + tab + text after caret
        $(this).val($(this).val().substring(0, start)
            + "\t"
            + $(this).val().substring(end));

        // put caret at right position again
        $(this).get(0).selectionStart =
        $(this).get(0).selectionEnd = start + 1;
    }
});

http://jsfiddle.net/jz6J5/

于 2013-10-11T06:24:43.373 回答