Выпадающий с текстовым полем, используя UI-Select в угловых JS - PullRequest
0 голосов
/ 04 ноября 2018

Я ищу раскрывающийся список с текстовым полем в angularJS. В настоящее время я использую тег. У меня есть условие фильтра также. Не знаете, как сохранить введенное пользователем значение.

      <span>
            <ui-select
            ng-model="ele.test"
            theme="selectize"
            class="form-select-control select-dropdown-fixed-position"
            style="width:16em;text-align:left"
            name="test"
            ng-change="someEvent(ele)"
            ng-model-options="{ updateOn : 'default blur' }">
                <ui-select-match
                    placeholder="Test">{{$select.selected}}</ui-select-match>
                    <ui-select-choices
                            repeat="test in testList| filter: $select.search">
                        <span ng-bind-html="test | highlight: $select.search"></span>
                    </ui-select-choices>
            </ui-select>
        </span>

Если пользователь вводит любое значение, кроме значений, перечисленных в выпадающем меню, я должен сохранить его. Я пытался с тегом, но он не работал.

Любая помощь приветствуется.

Ответы [ 2 ]

0 голосов
/ 09 ноября 2018

Я искал разрешение для ввода пользователя в раскрывающемся списке, если введенное пользователем значение отсутствует в списке, сохраните его. Я нашел ниже решение здесь. Разрешить ввод текста вручную в ui-select

   <ui-select ng-model="superhero.selected">
   <ui-select-match placeholder="Select or search a superhero ..."> 
       {{$select.selected}}</ui-select-match>
   <ui-select-choices repeat="hero in getSuperheroes($select.search) 
         |filter: $select.search">
       <div ng-bind="hero"></div>
   </ui-select-choices>
   </ui-select>

В контроллере

   $scope.getSuperheroes = function(search) {
    var newSupes = $scope.superheroes.slice();
    if (search && newSupes.indexOf(search) === -1) {
    newSupes.unshift(search);
   }
   return newSupes;
   }
0 голосов
/ 04 ноября 2018

Вы можете сохранить его, используя значение $scope.ele.test, которое содержит значение введенного текста.

var myVal = $scope.ele.test;

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