2016-10-16 59 views
1

我有一個選擇列表。如何重置AngularJS中的選擇列表並跟蹤?

<select id="search.month" 
    ng-model="search.month" 
    class="form-control" 
    ng-options="item as item.name for item in months track by item.id"> 
</select> 

我重置列表

$scope.reset = function() { 
    $scope.search = {reportType: 0, month: 0, year: 0 }; 
}; 

什麼也沒有發生。 AngularJS 1.5.8

回答

0

1.4 +的AngularJs中有bug。根據我的經驗,至少達到1.5.8。

手動重置列表。

$scope.reset = function() { 
    $scope.search = {reportType: 0, month: 0, year: 0 }; 
    // Manually reset. 
    // https://github.com/angular/angular.js/issues/14892 
    $('#search\\.month').find('> option').each(function() { 
    $(this).removeAttr('selected'); 
    }); 

    $('#search\\.year').find('> option').each(function() { 
    $(this).removeAttr('selected'); 
    }); 
}; 
0

你需要調用這個函數:

$scope.resetDropDown = function() { 
$scope.temp = $scope.search.month; // Before reset select box, get selected value 
    $scope.search.month = ""; 
} 
+0

似乎並沒有工作。 $ scope.temp從0開始,我已經在$ scope.search = {reportType:0,month:0,year:0}中將$ scope.search.month設置爲0; – Interlated

相關問題