• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

AngularJS i Angular Material zmiana podpowiedzi w md-autocomplete

Object Storage Arubacloud
+2 głosów
368 wizyt
pytanie zadane 30 lipca 2017 w JavaScript przez Kuba Pyda Początkujący (310 p.)

Witam,

Tworzę prostą aplikacje do zarządzania meczami dla sędziów, gdy użytkownik będzie dodawał mecz  to na początku musi wybrać ligę w jakiej rozgrywany był mecz. Na podstawie wartości tego pola ustalane są wartości podpowiedzi jakie wyświetlane są w polu md-autocomplete w których wpisujemy nazwy drużyn Gospodarzy i Gości. Uogólniając chodzi o to że jeśli jest wybrana np. Ekstraklasa to możemy wpisać tylko drużyny z ekstraklasy np. Legia Warszawa, Pogoń Szczecin itp. Mój problem polega na tym że przy pierwszym wyborze wszystko działa okjednak jeśli chcemy zmienić np. z Ekstraklasy na I Ligę to dane się nie updatują. Oto fragmenty kodu:

<md-select ng-model="vm.infoAboutMatch.league" ng-change="vm.selectLeague()">
    <md-optgroup label="{{ 'matches.form.league.seniorLeague' | translate }}">
        <md-option ng-value="class" ng-repeat="class in vm.seniorLeague">
             {{ class }}
        </md-option>
    </md-optgroup>
    <md-optgroup label="{{ 'matches.form.league.juniorLeague' | translate }}">
        <md-option ng-value="class" ng-repeat="class in vm.juniorLeague">
            {{ class }}
        </md-option>
    </md-optgroup>
    <md-optgroup label="{{ 'matches.form.league.womansLeague' | translate }}">
        <md-option value="{{ class }} Kobiet" ng-repeat="class in vm.womansLeague">
            {{ class }}
        </md-option>
    </md-optgroup>
</md-select>

<md-autocomplete ng-disabled="vm.addTeams" md-search-text="vm.infoAboutMatch.homeTeam" md-selected-item-change="vm.selectedItemChange(team)" md-items="team in vm.teams | filter:vm.infoAboutMatch.homeTeam" md-item-text="team" md-min-length="0" placeholder="{{ 'matches.form.homeTeam' | translate }}" md-menu-class="autocomplete-custom-template">
    <md-item-template>
        {{ team }}
    </md-item-template>
</md-autocomplete>

 

A to funkcja która POWINNA updatować dane w autocomplete

function selectLeague() {
    if (vm.infoAboutMatch.league) {
        vm.addTeams = false;

        switch (vm.infoAboutMatch.league) {
            case 'Ekstraklasa':
                vm.teams = TeamsService.topLeague;
                vm.autocompleteField = !vm.autocompleteField;
                $log.info(vm.teams);
                break;
            case 'I Liga':
                vm.teams = TeamsService.firstLeague;
                vm.autocompleteField = !vm.autocompleteField;
                $log.info(vm.teams);
                break;
            default:
                $log.info('ERROR!');
        }
    } else {
        vm.addTeams = true;
    }
}

 

Ktoś ma jakiś pomysł jak można by to rozwiązać, próbowałem odświeżać widok przy pomocy $state.reload() jednak nie działa, Z góry dziękuję za pomoc i Pozdrawiam.

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
4 odpowiedzi 893 wizyt
pytanie zadane 13 sierpnia 2018 w JavaScript przez Tomek Reda Obywatel (1,110 p.)
0 głosów
0 odpowiedzi 177 wizyt
pytanie zadane 11 września 2018 w HTML i CSS przez multim Obywatel (1,830 p.)
0 głosów
0 odpowiedzi 534 wizyt
pytanie zadane 19 sierpnia 2018 w JavaScript przez Tomek Reda Obywatel (1,110 p.)

92,572 zapytań

141,423 odpowiedzi

319,645 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...