2017-04-27 3 views
2

Ich benutze Winkel und materializscss (link). Ich möchte nach $ http komplette Update material_select() aber keine Lösung finden.

Ich habe bisher versucht ::

1> $('select').material_select(); 

2> $(element).material_select(); 

Kann jemand eine Lösung vorschlagen.

Vielen Dank im Voraus.

+0

sein, die $ http Aufruf redest du da? – Mistalis

+0

Ich rufe einen 'ajax' durch angular UND auf '.success' Ich verwende diese Initialisierungsfunktion. –

+0

Haben Sie material_select() im .success Ihres $ http-Aufrufs aufgerufen? – Mistalis

Antwort

2

Verwenden Schritte nach Ihrer Antwort zu lösen ::

$http({ 
    method: "POST", 
    url: '/xxxxxxx', 
    data: { 
    type: "1" 
    } 
}) 
    .success(function (result) { 
    //result-> [{value:1,name:val1},{}...] 
    $scope.choices = result; 

    //timeout use for resolving $digest issue of $scope 
    $timeout(function() { 
    angular.element(document).find('#mySelect').material_select(); 
    }, 500); 

    }); 

$timeout Verwendung dieser Dienst in Ihrem Controller.

in Ihrem DOM wird es wie unten

<select class="" id="mySelect" material-select ng-model="accountType" ng-options="item.value as item.name for item in choices"> 
</select> 
+0

Ich bin ok mit dem Selektor, aber warum ein Timeout verwenden? – Mistalis

Verwandte Themen