У меня есть ввод:
<input type="text" id="input">
Когда пользователь вводит 3 цифры, добавляется ()
, чтобы окружить эти 3 цифры:
var inp = $('#input');
inp.on('input', function (e) {
var curchr = this.value.length;
var curval = input.val();
if (curchr == 3 && curval.indexOf('(') < 0 && curval.indexOf(')') < 0) {
inp.val('(' + curval + ')' + " ");
}
});
Так что, если я наберу 123
, Становится (123)
.
Отлично работает на рабочем столе, но на мобильном месте курсор не обновляется. Как будто я ввожу 123
, он становится (123)
Но место курсора (12|3)
, а не (123) |
.
|
представляет курсор здесь.
Я искал Решение и попробовал:
this.selectionStart = this.selectionEnd = this.value.length;
и:
inp.focus().val(inp.val());
Но безуспешно.