Пользовательский выбор / поле со списком Jquery

Я использую jQuery; У меня есть поле выбора, параметры которого заполняются из объекта json. Но поскольку база данных потенциально неполна, я хотел бы предложить пользователю возможность ввести собственное значение. Большинство решений со списком, которые я рассматривал, так или иначе работают со сбоями. Каковы альтернативные решения в этом случае?


person Mr Hyde    schedule 21.10.2010    source источник
comment
Я пробовал плагин simpleCombo и большинство решений здесь: stackoverflow. ком/вопросы/195270/   -  person Mr Hyde    schedule 21.10.2010
comment
На самом деле простая комбинация наиболее близка к той функциональности, которую я хочу; но он сломан;   -  person Mr Hyde    schedule 21.10.2010


Ответы (3)


Для этого можно использовать плагин jQuery Editable Combobox.

jQuery Editable Combobox — это функция jQuery, которая позволяет преобразовать любой тег в редактируемый список со списком.

Это делается путем добавления нового элемента для переноса значения, введенного с клавиатуры. Это будет работать только для выбранных элементов. Любые другие элементы, к которым будет применена эта функция, будут проигнорированы.

person Sarfraz    schedule 21.10.2010
comment
Ему нужно другое поле для установки значения; Пространство действительно ограничено, однако я добавлю это как вариант; - person Mr Hyde; 21.10.2010
comment
Сожалею о предыдущем комментарии, я был неправ. Очень хорошо подходит для моего приложения. Вы МОЖЕТЕ ввести прямо в поле выбора. - person Mr Hyde; 21.10.2010

Может быть, поле автозаполнения? Где пользователь может начать печатать, и представлены ваши варианты, но также можно ввести другое значение. Нравится:

Быстрый выбор

Подключаемый модуль QuickSelect может изменить ваше поле <select> на одно из этих. http://github.com/dcparker/jquery_plugins/tree/master/quickselect

person Adam    schedule 21.10.2010
comment
Эм, сейчас попробовал. Но заполненные параметры в моем поле выбора являются числовыми, поэтому функция автозаполнения почти бесполезна. Это сработало бы, если бы была возможность отображать раскрывающийся список независимо от совпадения ввода. Спасибо - person Mr Hyde; 21.10.2010

Все решения по профессиональному элементу управления Combobox на основе jQuery? сосредоточены на использовании ввода как средства к фильтрации и автозаполнению существующего значения выбора.

Основная проблема, которую я вижу с «jQuery Editable Combobox», заключается в том, что он остается списком выбора, и совсем не очевидно, что вы можете просто начать вводить что-то новое.

Если вы ищете традиционное поле со списком, которое просто «Введите что-нибудь или выберите из этих предопределенных значений» (нет, мы не будем скрывать те, которые не совпадают, пока вы печатаете), все, что вы можете нужно сделать это

<select id="combo4" style="width: 200px;"
            onchange="$('input#text4').val($(this).val());">
    <option>option 1</option>
    <option>option 2</option>
    <option>option 3</option>
</select>
<input id="text4"
       style="margin-left: -203px; width: 180px; height: 1.2em; border: 0;" />

См. http://bit.wisestamp.com/uncategorized/htmljquery-editable-combo-2/

Должно быть легко обернуть это в плагин, который преобразует существующий тег выбора, хотя я еще не видел этого.

person Danny W. Adair    schedule 10.04.2011
comment
Один из подходов, который я использовал, использовал автозаполнение Jquery UI =› stackoverflow. ком/вопросы/4776754/ - person Mr Hyde; 11.04.2011