我会用角度重置一个选择等级但在我的情况下,这不起作用。如果我尝试使用$ scope.projetColumn的案例(紧接着)。这很好。
在我的控制器中:
$scope.projetColumn = [
{
id: 1,
group : "Backlog",
name : " = 'Backlog (Stock)'"
},
{
id: 2,
group : "In Progress",
name : "not in (New,'Backlog (Stock)',Closed)"
}
];
然后,如果我调用此功能,则可以重置选择:
在我的控制器中:
$scope.resetDropDown = function() {
if(angular.isDefined($scope.projetAA)){
delete $scope.projetAA;
}
}
在我看来:
PROJET <select name="selectProjet" class="form-control" ng-model="projetAA" ng-change="getProjetColumns(projetAA,column)" ng-options="item as item.name for item in projetColumn track by item.id"></select>
STATUT <select name="selectColumn" class="form-control" ng-model="column" ng-change="getStatut(column);" ng-options="item as item.name group by item.group for item in columnTab track by item.id"></select>
但问题是,在我的情况下,$ scope.projetColumn(第一个选择的ng-option)每次更改第二个选择的ng-option时都会更改。这不是一成不变的。
当我更改第二个选择时,我执行此代码,用来自($ scope.projetColumn)的数据更新第一个选择
$scope.getStatut = function (columnTab) {
$scope.makePromiseCards = cardsFactory.getListeAll(search);
$scope.makePromiseCards.then(function (value) {
$scope.projetColumn = [];
var objBase = {id: 0, name: ''};
$scope.projetColumn.push(objBase);
var cptG=1;
$scope.cards.forEach(function(entry){
entry.forEach(function(entry2){
if((entry2.fields !== undefined) && findProjectInObject(entry2.fields.project.key,$scope.projetColumn) === -1) {
var obj = {id: cptG, name: entry2.fields.project.key};
$scope.projetColumn.push(obj);
cptG++;
}
});
});
});
}
所以,有人知道为什么第一个选择始终具有相同的索引,即使使用$ scope.resetDropDown方法,我也无法将索引重置为0?
先谢谢你,对不起,我很难用羽毛虫重现这个错误:/。我希望你能理解我的问题