在 angularjs 中使用“trackby”时,选择下拉菜单的默认值不起作用

2023-12-22

我在用track by避免奇怪的值::string附加到value但是当我默认选择下拉列表时,下拉列表没有被选择。 这是我的笨蛋

笨蛋示例 http://plnkr.co/edit/AnE0zZ4Y1q45HvDuh22U?p=preview


(function(angular) {
  'use strict';
angular.module('defaultValueSelect', [])
  .controller('ExampleController', ['$scope', function($scope) {
    $scope.data = {
     availableOptions: [
       {id: '1', name: 'Option A'},
       {id: '2', name: 'Option B'},
       {id: '3', name: 'Option C'}
     ],
     selectedOption: '2' //This sets the default value of the select in the ui
     };
 }]);
})(window.angular);
<!doctype html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Example - example-select-with-default-values-production</title>
  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.0-rc.0/angular.min.js"></script>
  <script src="script.js"></script>
</head>
<body ng-app="defaultValueSelect">
  <div ng-controller="ExampleController">
  <form name="myForm">
    <label for="mySelect">Make a choice:</label>
   
      
    <select ng-model="data.selectedOption"> 
       <option ng-repeat="option in data.availableOptions track by option.id" value="{{option.id}}">{{ option.name}}</option> 
    </select>
  </form>
  <hr>
  <tt>option = {{data.selectedOption}}</tt><br/>
</div>
</body>
</html>

演示的工作片段

请更改您的<select>标记如下

<select ng-model="data.selectedOption"> 
   <option ng-repeat="option in data.availableOptions track by option.id" value="{{option.id}}">{{ option.name}}</option> 
</select>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 angularjs 中使用“trackby”时,选择下拉菜单的默认值不起作用 的相关文章

随机推荐