Как загрузить модель на лету angularjs Выберите поле со списком - PullRequest
0 голосов
/ 21 февраля 2020

На данный момент у меня есть поле со списком . В моем appservice я запрашиваю свою базу данных и беру десятку.

<select id="StationSelectionCombobox"
        name="Country"
        ng-options="s.amenityUID as s.amenityName for s in  vm.nearbyStations"
        ng-model="vm.stations[$index].amenityUID"
        ng-change="vm.updateStation($index)"
        class="form-control bs-select drop-down"
        ui-jq="selectpicker">
    <option value="">@L("NotSelected")</option>
</select>

Я хочу обновить модель на лету по мере ввода символов. Могу ли я спросить, как насчет того, как мне это сделать, или если это вообще возможно с этим контролем.

1 Ответ

0 голосов
/ 21 февраля 2020

поля со списком не являются родными для HTML4 или AngularJS. Они требуют сторонней библиотеки или пользовательской директивы.

Подумайте об использовании этих библиотек:

  • ui-select2 , которая прекрасно работает с ngModelController, ng-model и директивами проверки, такими как ng-required.
  • ui-select AngularJS - собственная версия Select2 и Selectize .

Использование элемента <datalist> в качестве поля со списком

HTML5 имеет элемент <datalist>, который может действовать как поле со списком:

<label for="ice-cream-choice">Choose a flavor:</label>
<input list="ice-cream-flavors" id="ice-cream-choice"
       name="ice-cream-choice" ng-model="flavorChoice" />    
<datalist id="ice-cream-flavors">              
    <option ng-repeat="choice in choicesArr | filter : flavorChoice | limitTo : 5"
            ng-value="choice">
    </option>
</datalist>

Для получения дополнительной информации см.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...