选择的初始值未在AngularJS中设置
发布时间:2020-12-17 18:08:47 所属栏目:安全 来源:网络整理
导读:在AngularJS 1.3应用程序中,我有一个表单,我从后端异步获取模型和选择控件的可能值.当我在ng-options中使用的值之前获得模型值时,在选择控件中不会选择任何选项. 我设法重现了这种行为: var app = angular.module('plunker',[]);app.controller('MainCtrl',
在AngularJS 1.3应用程序中,我有一个表单,我从后端异步获取模型和选择控件的可能值.当我在ng-options中使用的值之前获得模型值时,在选择控件中不会选择任何选项.
我设法重现了这种行为: var app = angular.module('plunker',[]); app.controller('MainCtrl',function($scope,$timeout) { $scope.model = { value: 101 }; $timeout(function() { $scope.model.values = [100,101,102,103]; },1000); }); 视图: Options: <select ng-model="model.value" ng-options="v for v in model.values"> <option value="">Select some...</option> </select> 超时模型具有旧值101但未选择任何选项. 有人可以解释为什么没有选择选项吗? 普兰克:http://plnkr.co/edit/4opZRJzdDfJhSNJx8RMF 编辑:我在Firefox中打开了Plunkr,然后我开始工作,然后我回到Chrome,它看起来不像crossbrowser问题…… 解决方法
我同意@PrimosK的问题.
解决方案是添加跟踪: ng-options="v for v in model.values track by v" 例如Plunker (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |