angularjs - 过滤并自动选择下拉 angularjs
问题描述
我是 angularjs 的新手,还在学习。我在下面有这段代码。我的目标是将数据从数据库加载到下拉列表中。例如,数据库中的数据是New Construction
我想从LoadDropdown
函数中加载所有数据,并且New Construction
默认选择了。
HTML
<select name="ScopeofWork" class="form-control" ng-model="drpScopeWork" ng-options="SoW as SoW.label for SoW in ScopeOfWorkList">
<option value="" selected hidden></option>
</select>
JS
function LoadDropdown() {
$scope.ScopeOfWorkList = [{ value: 'New Construction', label: 'New Construction' },
{ value: 'Erection', label: 'Erection' },
{ value: 'Addition', label: 'Addition' },
{ value: 'Renovation', label: 'Renovation' },
{ value: 'Repair', label: 'Repair' }];
}
fnLoadDropdown();
function fnLoadDropdown() {
var url = '/AccessoryGroundPreparation/LoadScopeofWork';
$http({
method: "post",
url: url,
//data: { "ScopeOfWork": ScopeOfWork, "projectID": projectID }
}).then(function (res) {
var data = res.data;
if (data.data == null)
LoadDropdown();
else {
// $scope.drpScopeWork = $scope.ScopeOfWorkList[0];
$scope.drpScopeWork = data.data;
}
});
}
解决方案
用于为数组的模型表单索引ng-init
分配一个值,例如drpScopeWork
0
ng-init="drpScopeWork = ScopeOfWorkList[0].value"
这是工作代码片段:
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.ScopeOfWorkList = [{
value: 'New Construction',
label: 'New Construction'
},
{
value: 'Erection',
label: 'Erection'
},
{
value: 'Addition',
label: 'Addition'
},
{
value: 'Renovation',
label: 'Renovation'
},
{
value: 'Repair',
label: 'Repair'
}
];
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.9/angular.min.js"></script>
<div ng-app="myApp" ng-controller="myCtrl">
<div>
<select name="ScopeofWork" class="form-control" ng-model="drpScopeWork" ng-options="SoW.value as SoW.label for SoW in ScopeOfWorkList" ng-init="drpScopeWork = ScopeOfWorkList[0].value">
</select>
</div>
</div>
推荐阅读
- kotlin - 在 Kotlin 中,如何找到最后包含 0 的列表的所有元素?
- c++ - 为什么以及何时使用多态性将基类指向 C++ 中的派生类
- raku - 可以在栅格数据上使用 Perl6 语法吗?(用例:云优化的 GeoTIFF 验证)
- laravel - 测试 Nuxt.js 前端和 Laravel 后端的方法
- mysql - 如何在一个语句中显示所有内容
- node.js - 为什么我在 Speech to text 代码中收到此错误?
- jenkins - 詹金斯:构建后删除回购,只保留日志
- c++ - 在 Visual Studio 2017 中使用 high_resolution_clock 获取错误的日期和时间/从纪元时间获取毫秒数(1970 年 1 月 1 日)
- python - 将未来的日期时间添加到 pandas df
- c++ - 如何让.exe程序通过c ++启动