jQuery代码完成样式文本框键入

时间:2012-09-05 22:11:10

标签: javascript jquery textbox code-completion

有没有人知道将执行代码完成类型函数的jQuery(或纯JS,无关紧要)的函数或插件?但是有可变选择吗?就像我想开始输入[b]一样,当我添加最后一个括号时,它会在光标后自动添加[/b]?如果有人知道这样的话,那就太棒了,节省了大量的时间。

1 个答案:

答案 0 :(得分:2)

使用JQuery Caret Plugin,您可以使用以下代码:

<textarea id="codeInput" cols="80" rows="50">content</textarea>
<script type="text/javascript">

    var tagDict = {
      "[b]" : "[/b]",
      "[c]" : "[/c]",
      "[d]" : "[/d]"
    };

    $(document).ready(function () {
        $('#codeInput').keyup(function () {
            var test = $(this).val();
            var tagStart = test.substr(test.length - 3, 3);
            if (tagDict[tagStart]) {
                $(this).val(test + tagDict[tagStart]);            
                $(this).caret(test.length, test.length);
            }
        });
    });
    </script>

它并不完美,但它可能是完整代码完成功能的开始。