我在 angular js 的 ng-repeat 中使用下拉菜单,
我的 HTML 代码是
<select class="form-control" ng-model="l.Language" ng-change="languageChange($index, l.Language)" ng-options="L.ID as L.LanguageDDL for L in LanguageDDLList track by L.ID" required></select>
我的 Controller 是
function getLanguagesFromLookup() {
LanguagesService.getLanguagesfromLookup($scope.userId).success(function (data) {
var languagesListfromLookup = data.customtableitem[0]["Lookup"];
$scope.LanguageDDLList = [];
for (var i = 0; i < languagesListfromLookup.length; i++) {
var item = {
ID: languagesListfromLookup[i].ItemID,
LanguageDDL: languagesListfromLookup[i].Skill
}
$scope.LanguageDDLList.push(item);
}
}).error(function (data) {
$log.info("Error occured while getting Languages Dropdown.")
});
}
并获取默认值
$scope.Language = $scope.LanguageDDLList[0].ID
我在这里面临的问题是我在模型中获得了值,即 1,但是在下拉列表中没有选择值为 1 的选项。
任何人都可以提出问题是什么吗 Attached reference Image Please click to see image
最佳答案
您将 ngModel 设置为 l.Language,但设置了 $scope.Language。这就是您的下拉列表未被选中的原因。
<select class="form-control" ng-model="l.Language" ng-change="languageChange($index, l.Language)" ng-options="L.ID as L.LanguageDDL for L in LanguageDDLList track by L.ID" required></select>
例子 plunk here
更新: 使用包装 ng-repeat 扩展 plunk,并通过 L.ID 删除轨道,因为我们已经选择了 ID。
关于html - 下拉列表未使用 Angular js 中的选定值进行选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36306492/