Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Установка каретки в конце текста textarea (https://javascript.ru/forum/misc/25144-ustanovka-karetki-v-konce-teksta-textarea.html)

Dorian_bs 26.01.2012 21:35

Установка каретки в конце текста textarea
 
Всем привет!)
На днях столкнулся с проблемой установки каретки на нужной позиции в textarea.

Объяснение:
У меня есть textarea с текстом, например "test".

<textarea class="main">test</textarea>


И есть код, который устанавливает каретку в конце текста, тем самым делая форму активной.

var a = $('.main'),
     b = a.val().length;
a.setSelectionRange(b, b);


Но при работе, выдает ошибку, мол метод setSelectionRange не существует.
В чем может быть проблема?

Gozar 26.01.2012 21:43

Цитата:

Сообщение от Dorian_bs (Сообщение 153175)
var a = $('.main'),
     b = a.val().length;
a.setSelectionRange(b, b);


Но при работе, выдает ошибку, мол метод setSelectionRange не существует.
В чем может быть проблема?

Ты наверное будешь смеяться, но в этом и проблема. У a (jquery) нет метода setSelectionRange.

Цитата:

Сообщение от http://stackoverflow.com/questions/7464282/javascript-scroll-to-selection-after-using-textarea-setselectionrange-in-chrome
var textArea = document.getElementById('myTextArea');

//define your selection
var selectionStart = 50;
var selectionEnd = 60;
textArea.setSelectionRange( selectionStart, selectionEnd);


inst 26.01.2012 22:29

На jQuery это пишется как-то так:
$('textarea.main').each(function () {
  var len = $(this).val().length;
  this.setSelectionRange(len, len);
});


Часовой пояс GMT +3, время: 03:50.