往textarea光标所在位置添加字符串

  作者:chrispy

<script> $(function() { /* 在textarea处插入文本--Start */ (function($) { $.fn.extend({ insertContent : function(myValue, t) { var $t = $(this)[0]; if (document.selection) { // ie this.focus();

<script>

    $(function() {

        /* 在textarea处插入文本--Start */

        (function($) {

            $.fn.extend({

                insertContent : function(myValue, t) {

                    var $t = $(this)[0];

                    if (document.selection) { // ie

                        this.focus();

                        var sel = document.selection.createRange();

                        sel.text = myValue;

                        this.focus();

                        sel.moveStart('character', -l);

                        var wee = sel.text.length;

                        if (arguments.length == 2) {

                            var l = $t.value.length;

                            sel.moveEnd("character", wee + t);

                            t <= 0 ? sel.moveStart("character", wee - 2 * t - myValue.length) : sel.moveStart( "character", wee - t - myValue.length);

                            sel.select();

                        }

                    } else if ($t.selectionStart

                        || $t.selectionStart == '0') {

                        var startPos = $t.selectionStart;

                        var endPos = $t.selectionEnd;

                        var scrollTop = $t.scrollTop;

                        $t.value = $t.value.substring(0, startPos)

                            + myValue

                            + $t.value.substring(endPos,$t.value.length);

                        this.focus();

                        $t.selectionStart = startPos + myValue.length;

                        $t.selectionEnd = startPos + myValue.length;

                        $t.scrollTop = scrollTop;

                        if (arguments.length == 2) {

                            $t.setSelectionRange(startPos - t,

                                $t.selectionEnd + t);

                            this.focus();

                        }

                    } else {

                        this.value += myValue;

                        this.focus();

                    }

                }

            })

        })(jQuery);

        /* 在textarea处插入文本--Ending */

    });

    $(document).ready(function(){

        $("#ch_button").click( function () {

            $("#test_in").insertContent("12");

        });

    });

</script>




<button id="ch_button" value="插入">插入</button>

<textarea name="content" id="test_in" rows="30" cols="100">



有用  |  无用

猜你喜欢