html - 下拉列表未使用 Angular js 中的选定值进行选择

标签 html angularjs

我在 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/

相关文章:

html - 绝对元素继承了父元素的宽度,但我希望它根据其子元素进行拉伸(stretch)

iphone - 通过 iPhone Web App 访问相机

javascript - 如何使用 jQuery click 方法显示隐藏的元素?

javascript - 如何在 AngularJS 组件中定义新变量

javascript - 使用 AngularJS 将表单数据数组保存到先前的数组

javascript - AngularJS $资源和缓存工厂

javascript - jquery/javascript 隐藏和显示元素依赖下拉列表

html - 通过使用 <p> 和一些 CSS 转换旋转文本,使文本换行

javascript - UI-Sortable 带有用于 ng-repeat 的 Angular 过滤器

javascript - 将 "active"类应用到移动设备上的选项卡,而不是桌面设备