Подтвердить что ты не робот

Выбор части строки внутри поля ввода с помощью jQuery

Я пытаюсь понять, как выделить только часть текста внутри поля ввода, используя jQuery. Это довольно просто выделить все содержимое окна ввода, но как вы выделяете только одно слово или пару букв?

Спасибо!

4b9b3361

Ответ 1

В текстовых <input> элементах будет выполняться следующее. В примере выбирается только слово "два" на входе:

function setInputSelection(input, startPos, endPos) {
    input.focus();
    if (typeof input.selectionStart != "undefined") {
        input.selectionStart = startPos;
        input.selectionEnd = endPos;
    } else if (document.selection && document.selection.createRange) {
        // IE branch
        input.select();
        var range = document.selection.createRange();
        range.collapse(true);
        range.moveEnd("character", endPos);
        range.moveStart("character", startPos);
        range.select();
    }
}

document.getElementById("setSelection").onmousedown = function() {
    var input = document.getElementById("i");
    setInputSelection(input, 4, 7);
    return false;
};
<input id="i" type="text" value="One two three">
<input type="button" value="Set selection" id="setSelection">

Ответ 2

Вам нужно будет выбрать все значение, а затем обработать строку в коде. В зависимости от того, что вы пытаетесь сделать со словами, вы можете использовать регулярные выражения для соответствия определенным словам/буквам.