取消选择angularjs中的select2

时间:2016-10-04 06:37:44

标签: angularjs select2

我正在使用https://github.com/angular-ui/ui-select2/blob/master/src/select2.js处理带有angularjs的select2。有一个按钮可以重置select2(即设置占位符)。点击按钮,我必须从角度控制器调用一个函数。在该功能中,我必须重置select2。我不知道该怎么做。我是angularjs的新手。所以我无法理解指令。如果有人知道解释的解决方案,将不胜感激。

这是我的代码,直到现在,

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', '');
}

1 个答案:

答案 0 :(得分:1)

这里的想法是在重置时使你的ng模型为空。根据文档,ui-select2与<select ng-options>不兼容。要获得最佳效果,请使用<option ng-repeat>。请找到工作的plunker Plunker - UI Select2 with Reset

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

但我强烈建议您使用https://github.com/angular-ui/ui-select,因为您提到的select2的链接已被删除。