簡體   English   中英

從AngularJS中的Controller將ng-option重置為默認值

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM