Это кажется очень простой вещью, которую я ищу, и тот факт, что я ничего не могу найти на SO или где-либо еще, заставляет меня думать, что я должен упустить что-то действительно очевидное, но пока я в тупике. Мой вопрос; Есть ли способ при использовании поля выбора, настроенного с помощью ng-options, установить для списка отсутствие выбора (т.е. selectedIndex = -1)? У меня есть поле выбора, настроенное как не раскрывающееся, и я хочу иметь возможность отображать список без выбора.
Я добавляю код, который использую ниже, но я считаю, что это довольно стандартный материал. Массив curSearchResults заполняется с сервера. Я не включаю это здесь, так как оно работает нормально. Я попытался установить для selSearchRslt значение null и вернуться к новому searchRslt() после получения списка, но оба варианта оставляют пустую опцию в верхней части списка. Я привык к тому, что очень просто установить поле выбора без выбора по желанию...
у контроллера:
function searchRslt() {
this.RsltId = '';
this.RsltName = '';
}
$scope.curSearchRslts = [];
$scope.selSearchRslt = new searchRslt();
в разметке:
<select class="listPanel"
ng-model="selSearchRslt"
ng-options="rslt as rslt.RsltName for rslt in curSearchRslts"
ng-change="loadSearchRslt()"
size="40" style="height: 300px; width: 480px">
</select>
Это ответ на комментарии ниже:
Я прочитал вопросы, на которые вы ссылаетесь, и я видел материал в документе о добавлении параметра в разметку, но это не дает того же результата, что и установка выбранного индекса на -1. Вместо этого он добавляет неиспользуемый параметр в мой список. В частности, когда список не отображается в виде раскрывающегося списка, я считаю это решение очень неуклюжим с точки зрения пользовательского интерфейса. Мне не нужна эта дополнительная опция. Мне нужны только те параметры, которые я действительно собираюсь использовать, но ни один из них не выбран. Если ответ: я не могу этого сделать, хорошо, но добавление неиспользуемой опции, безусловно, не то же самое, что установка для selectedIndex значения -1.
Кроме того, я не ищу способ установить параметр по умолчанию, я ищу способ не выбирать никаких параметров. Я не понимаю, как это можно рассматривать как одно и то же. Мне очень легко установить выбор по умолчанию. Я бы никогда не опубликовал вопрос об этом. Я не нашел ничего, что предлагает способ НЕ выбирать. Если я что-то упустил здесь и у меня полностью отключился мозг, примите мои извинения, но я не понимаю, как упомянутый вопрос каким-либо образом отвечает на этот вопрос.