[英]Reseting ng-option to default value from the Controller in AngularJS
我的應用中有以下選擇:
<select ng-model="diagnose" ng-options="c as c.Name for c in diseases | orderBy:['Name']">
<option value="">Diagnose*</option>
</select>
將數據發送到服務器后,我將重置整個表單,但是選擇將變為空選項,而不是顯示空值/硬編碼選項。
我嘗試了以下選項:
$promisedb.then(function (data) {
$scope.diagnose = [1];
});
和:
$promisedb.then(function (data) {
$scope.diagnose = [0];
});
和:
$promisedb.then(function (data) {
$scope.diagnose = '';
});
但是到目前為止沒有運氣。
我想念什么?
我相信您可以使用delete
命令將select
重置為默認選項,如下所示:
delete $scope.diagnose;
演示:
angular.module('MyApp', []).controller('MyCtrl', function MyCtrl($scope) { $scope.diseases = [ 'Disease 1', 'Disease 2', 'Other diseases...' ]; $scope.reset = function () { delete $scope.diagnose; }; });
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.8/angular.min.js"></script> <body ng-app="MyApp"> <div ng-controller="MyCtrl"> <select ng-model="diagnose" ng-options="d for d in diseases"> <option value="">Diagnose*</option> </select> <button ng-click="reset()">Reset</button> </div> </body>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.