angularjs для выпадающего списка

0

Мне нужно выпустить список. Первый раскрывающийся список:

<select ng-model="vm.eesAdminSetupData.Type"
class="form-control"  
id="Type"
name="Type"
required>
<option value="Form">Form</option>
<option value="List">List</option></select>

<select ng-model="vm.eesAdminSetupData.SettingID" 
class="form-control" 
id="SettingID" 
name="SettingID" 
ng-options="option.SettingID as option.SettingID + ' - ' + option.Name for option in vm.eesSettingIdOptions" >
<option ></option>
</select>

То, что я хочу сделать, - как только я выберу List, другой выпадающий список должен иметь значение пустым или нулевым. Это возможно?

  • 0
    <select ng-model = "vm.eesAdminSetupData.Type" class = "form-control" id = "Type" name = "Type" обязательный> <option value = "Form"> Form </ option> <option value = " Список "> Список </ option> </ select>
  • 0
    Пожалуйста, добавьте хотя бы ваш текущий HTML-код для выбора.
Показать ещё 4 комментария
Теги:

3 ответа

0

Пытаться

<select ng-model="vm.eesAdminSetupData.Type"
                class="form-control"  
                id="Type"
                name="Type"
                ng-change="changesettingsDropdown()"
                required>
                <option value="Form">Form</option>
                <option value="List">List</option>
                </select>

                <select ng-model="SettingID" 
                class="form-control" 
                id="SettingID" 
                name="SettingID" 
                ng-options="option.SettingID as option.SettingID + ' - ' + option.Name for option in vm.eesSettingIdOptions" >
                <option ></option>
                </select>

И в контроллере

$scope.vm = {};
$scope.vm.eesSettingIdOptions = [{"SettingID":"1","Name":"aaaa"}, {"SettingID":"2","Name":"bbbb"}];
$scope.changesettingsDropdown = function(){
    if($scope.vm.eesAdminSetupData.Type == "List") {
        $scope.SettingID = "0";
    }
}

Я добавил ng-change для первого элемента select и изменил ng-модель другого элемента select

  • 0
    Благодарю. Это будет работать. :)
0

Просто добавьте ng-show во второй <select> чтобы он отображался только при <select> списка.

<select ng-model="vm.eesAdminSetupData.Type"
  class="form-control"  
  id="Type"
  name="Type"
  required>
    <option value="Form">Form</option>
    <option value="List">List</option>
 </select>

 <select
   ng-show="vm.eesAdminSetupData.Type == 'List'" 
   ng-model="vm.eesAdminSetupData.SettingID" 
   class="form-control" 
   id="SettingID" 
   name="SettingID" 
   ng-options="option.SettingID as option.SettingID + ' - ' + option.Name for option in vm.eesSettingIdOptions">
     <option></option>
 </select>
0

Напишите атрибут ng-change в первом списке select например

ng-change=resetOtherDropdown()

в приведенной выше функции javascript просто сбросьте значение ng-model другого выпадающего списка

resetOtherDropdown = function() {
    $scope.vm.eesAdminSetupData.SettingID = "";
}

Ещё вопросы

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