2016-10-04 7 views
0

Ich verwende https://github.com/angular-ui/ui-select2/blob/master/src/select2.js um mit select2 mit angularjs zu arbeiten. Es gibt eine Schaltfläche zum Zurücksetzen von select2 (d. H. Platzhalter). Beim Anklicken muss ich eine Funktion vom Winkelregler aufrufen. In dieser Funktion muss ich select2 zurücksetzen. Ich weiß nicht wie. Ich bin neu in angularjs. Also kann ich Direktive nicht verstehen. Wenn jemand die Lösung mit Erklärung kennt, wird es geschätzt.deselect select2 in angularjs

Hier ist mein Code bis jetzt,

HTML

<select class="form-control" ui-select2="select2Options" id="ddlTechnology" name="ddlTechnology" ng-model="technology" ng-change="changeData('technology', technology)" ng-options="tech as tech.st_name for tech in technologies" style="width: 100%;"> 
    <option value=""></option> 
</select> 
<button ng-click="resetSearch()">Reset</button> 

JS

$scope.technologies = [{ 
    $hashKey: "object:14", 
    in_technology_id: 1, 
    st_name: "Networking"}, 
    {}, 
    {}, 
    ... 
]; 
$scope.resetSearch = function() { 
    $("#ddlTechnology").select2('val', ''); 
} 
+0

Können Sie bitte die Technologie-Array zur Verfügung stellen, die Sie in den Optionen – Vikash

+0

@Vikash auflisten, siehe Update bitte. Ich habe Technologien Array hinzugefügt –

+0

Haben Sie die unten genannte Lösung versucht – Vikash

Antwort

1

Die Idee hier ist Ihr ng-Modell leer auf Reset zu machen. Und laut Dokumentation ist ui-select2 inkompatibel mit <select ng-options>. Für die besten Ergebnisse verwenden Sie <option ng-repeat>. Sie finden den Arbeits Plunker Plunker - UI Select2 with Reset

$scope.resetSearch = function() { 
    $scope.technology = ''; 
} 

Aber ich würde Ihnen dringend empfehlen https://github.com/angular-ui/ui-select als Link von Ihnen für select2 erwähnt zu verwenden ist depreceated.