#javascript #angularjs #jquery-select2 #angular-ui #ui-select
#javascript #angularjs #jquery-select2 #angular-ui #пользовательский интерфейс-выбор
Вопрос:
У меня есть ui-select, который использует обновление для извлечения данных с сервера всякий раз, когда пользователь вставляет символ в поле ввода (поле поиска). проблема в том, что поле ввода недоступно, когда данные представляют собой пустой массив, поэтому пользователь не может выполнить поиск для извлечения данных. Излишне говорить, что я хочу представлять данные только тогда, когда пользователь ищет их.
Это происходит только с темой «select2». С темой boostrap это работает.
<ui-select id="client" name="client" ng-model="search._client" theme="select2" ng-change="loadInventories()">
<ui-select-match ng-show="$select.isEmpty()" allow-clear="true" placeholder="{{'CLIENT' | translate}}">{{$select.selected.name | translate}}</ui-select-match>
<ui-select-choices repeat="client in filtered_clients | filter: $select.search | orderBy:'name' | limitTo: 5" refresh="load_filtred_clients($select.search)" refresh-delay="0">
<div>{{client.name | translate}}</div>
</ui-select-choices>
</ui-select>
есть ли способ показать поле поиска, когда массив пуст?
Комментарии:
1. Я столкнулся с той же проблемой, которая является ошибкой. Репозиторий ui-select теперь заархивирован, но у вас есть выдающийся PR с исправлением этой проблемы
Ответ №1:
Похоже, тема ‘select2’ добавляет атрибут disabled
HTML в ваше окно поиска, когда массив пуст.
Вы можете попробовать найти код, в котором тема ‘select2’ добавляет атрибут disable, и отредактировать его (не рекомендуется) или переопределить каким-либо образом:
element.removeAttribute("disabled");