Попытка выполнить ng-change, используя семантический интерфейс и angularJS - PullRequest
0 голосов
/ 02 июля 2018

Я пытаюсь загрузить выпадающий список с angularjs и семантическим интерфейсом с помощью следующего кода

<div id="state" class="ui search selection dropdown">
  <label for="state">Estado</label>
  <input type="hidden" name="state">
  <i class="dropdown icon"></i>
  <div class="default text">Selecione o Estado</div>
  <div class="menu" ng-model="state" ng-change="loadCity()">
    <div ng-repeat="state in states" class="item" data-value="{{state.ID}}">{{state.NAME}}</div>
  </div>
</div>
<div>

Но событие не называется.

Когда я использую код ниже, он работает:

<select id="state" class="ui search selection dropdown" ng-model="state" ng-init="loadState()" ng-change="loadCity(state.ID)">
  <option ng-repeat="state in states" value="{{state.ID}}">{{state.NAME}}</option>
</select>

Что я делаю не так?

1 Ответ

0 голосов
/ 02 июля 2018

Похоже, это проблема, с которой сталкиваются другие люди. Посмотрите на эту проблему: https://github.com/Semantic-Org/Semantic-UI/issues/1913

Я нашел способ решить эту проблему с угловой стороны, используя магию 1,3. Это не лучший способ сделать это, но он работает.

Это может быть просто решено с помощью контроллера формы и часов. Я обновил PLNKR. Обратите внимание, что я использую underscore.js, чтобы найти индекс массива элемента управления внутри формы.

Остальное чисто угловатое и немного jquery.

http://plnkr.co/edit/eDOej3zJ0bwQ1xyX1LDI?p=preview

Посмотрите на раздел, начинающийся с: app.directive('select'

...