如何设置滚动条在多行文本框的最后一行移动?

时间:2012-06-13 11:12:13

标签: javascript jquery asp.net

我正在使用asp.net。如何设置滚动条在客户端的多行文本框中的最后一行移动?

3 个答案:

答案 0 :(得分:3)

设置ClientIDMode="Static",以便您可以使用其ID:

从jQuery引用textarea
<asp:TextBox ID="myTextBox" runat="server" ClientIDMode="Static" TextMode="MultiLine"></asp:TextBox>

在jQuery脚本标记之后添加此脚本:

$(document).ready(function () {
    $('#myTextBox').scrollTop($('#myTextBox')[0].scrollHeight - $('#myTextBox').height());
});

我对兼容性感到好奇,所以我在Chrome,Firefox,Opera和IE9中进行了测试,它确实有效。 :)

以下是解决方案的jsFiddle示例:http://jsfiddle.net/g9KBB/

答案 1 :(得分:1)

使用jquery的可能解决方案(在chrome 19中为我工作):

$('#wmd-input').scrollTop($('#wmd-input').height())

其中wmd-input是textarea的id

答案 2 :(得分:0)

function f(ta_id) {
        var d = document, ta, rng;
        if (d.all) {
            ta = d.all[ta_id];
            if (ta && ta.createTextRange) {
                rng = ta.createTextRange();
                rng.collapse(false);
                rng.select();
            }
        }
    }
    function SetTextBox(ID) {
        var TextBoxes = document.getElementById(ID.id);
        if (TextBoxes != null) {
            for (var i = 0; i < TextBoxes.length; i++) {
                f(TextBoxes[i].id);
            }
        }
    }
相关问题