Как получить элементы массива в угловых JS?

0
In html
<select class="element-margin-top" ng-model="vm.selectedRole" ng-options="(roleName,enabled) in vm.roleNames">
                <option value="">All Roles</option>{{vm.roles[0]}}
            </select>

Я хочу показать все элементы массива в опциях select. Я не понимаю, что происходит в этом. Это дает мне ошибку, связанную с (roleName, enabled) в vm.roleNames

In js:
 var vm = this;
 vm.roleNames = ['SuperAdmin','Admin','Retailer','Manufacturer'];
 vm.selectedRole = vm.roleNames[-1];

Я хочу, чтобы первый элемент был выбран по умолчанию.

Теги:

3 ответа

0
Лучший ответ

В html:

<select class="element-margin-top" ng-model="vm.selectedOption">
                    <option value="">All Roles</option>
                    <option ng-repeat="item in vm.optionNames" value="{{item}}">{{item}}</option>
                </select>

в js: -

vm.optionNames = ['User', 'Account', 'Brand'];
  vm.selectedOption = vm.optionNames[-1];

попробуйте прочитать http://www.undefinednull.com/2014/08/11/a-brief-walk-through-of-the-ng-options-in-angularjs/

  • 0
    Меня устраивает.
2

ng-options="(roleName,enabled) in vm.roleNames" в этом случае vm.roleNames - это массив, поэтому roleName является index и enabled является истинным "roleName"

Поэтому ваш код должен выглядеть так:

<select class="element-margin-top" ng-model="vm.selectedRole" ng-options="(index,roleName) as roleName in vm.roleNames">
         <option value="">All Roles</option>
</select>
  • 0
    Хорошо, спасибо, но как я должен тянуть элементы из массива для выбора - опция
  • 0
    @Pallavi Я обновил свой ответ.
Показать ещё 2 комментария
0

попробуйте это, для первого выбранного defult вы можете использовать $ first

<select   ng-model="selectedRole">
                        <option ng-repeat="name in roleNames "
                            ng-selected="$first" value="{{name}}">{{name}}</option>
                </select>
  • 0
    есть ошибка, что selectedRole не является функцией
  • 0
    Я забыл это, используйте $ first для выбора по умолчанию

Ещё вопросы

Сообщество Overcoder
Наверх
Меню