有没有办法显示下拉菜单中先前选择的选项

时间:2019-05-20 05:55:43

标签: html angularjs ng-options angularjs-select

我的html页面中有一个<select>元素。 <option>是通过循环给出的。所选值使用ng-model存储。现在,此数据已推送到数据库。下次重新加载该页面时,我希望<select>字段保留先前选择的选项。反正有做吗?

我已经看到ng-model通常自行填充文本字段。我尝试对<select>-<option>做同样的事情,但这不起作用


<select ng-model="option">
  <option value = "" disabled selected>---Choose an Option--</option> 
  <option ng-repeat = "x in option" value="x">{{x}}</option>
</select> 

1 个答案:

答案 0 :(得分:0)

从基元数组中选择时,请使用ng-options指令:

angular.module("app",[])
.controller("ctrl", function($scope) {
    $scope.options=["hello","world",1,2,3];

    //set previously selected option
    $scope.option = "world";
    
})
<script src="//unpkg.com/angular/angular.js"></script>
<body ng-app="app" ng-controller="ctrl">
    <select ng-model="option" ng-options="item for item in options">
         <option value = "">---Choose an Option--</option> 
    </select>
    <br>selected={{option}}
<body>

可以将ng-repeat与对象数组一起使用,但不能与基元数组一起使用。在内部,<select>指令使用跟踪信息为每个选项注释。它不能注释基元。

有关更多信息,请参见