自动填充空值在ng模型中,从ng选项获取数据
Automatically Populated Empty Value In ng-model ,data getting from ng-options
我在select
标签中使用ng-options
迭代的对象列表
对于下面有空值的对象列表,我发布了我的示例数据,我突出显示了空数据,我也发布了代码。
JSON数据:
$scope.dummyData = [
{
"id": "0a40f753-0919-4bb2-b64e-74a280695ac6",
"buildName": "JackPot",
"department": "",
"floor": "",
"roomno": "12345Room",
"wing": "TEST"
},
{
"id": "1ff0d1e3-c347-41ce-8b96-acb695bba7a8",
"buildName": "JackPot",
"department": "Dept",
"floor": "Testing",
"roomno": "123f",
"wing": "Test"
}
]
上面的JSON数据有floor:"空值。
代码:
<select ng-model="buildNameng" ng-options="option.floor as option.floor for option in dummyData | unique:'buildName'" style="width:12%" ng-change="buildCh(buildNameng)">
<!-- You can have ONE default, null selection option.--
<option value="">---Building---</option>
</select>
如果$scope.dummyData
Json楼层为空,则下拉列表会自动变为空值。这里的问题是,如果我在floor内部得到一个Empty值,就像上面的JSON一样。ng-model="buildNameng"
会自动填充这个空值,即使它还有一个非null值。ng模型buildNameng
首先自动填充到空数据中。我不知道该怎么控制?
我知道另一种方式,上面的select标记在没有选项的情况下会像这样改变。我得到了输出,但我有目的地不想要这样。
ng-options="option.id as option.floor for option in dummyData | unique:'buildName'"
我需要控制程序中自动填充的空数据,这也是问题所在。请指导我,我搜索了很多,但找不到
使用for循环遍历chosenCat数组,并在显示数据之前删除所有没有定义底部的数组项。
var dummyData = [
{
"id": "0a40f753-0919-4bb2-b64e-74a280695ac6",
"buildName": "JackPot",
"department": "",
"floor": "",
"roomno": "12345Room",
"wing": "TEST"
},
{
"id": "1ff0d1e3-c347-41ce-8b96-acb695bba7a8",
"buildName": "JackPot",
"department": "Dept",
"floor": "Testing",
"roomno": "123f",
"wing": "Test"
}
];
for(var i = 0; i < dummyData.length; i++) {
if (!dummyData[i].floor); {
dummyData.splice(i, 1);
}
}
$scope.dummyData = dummyData;
我猜您正在使用angular-filter
,所以您可以简单地使用angular-filter#removewith
filter
,如下所示:
removeWith: { floor: '' }
看看这个简单的例子:
(function() {
'use strict';
angular
.module('app', ['angular.filter'])
.controller('mainCtrl', mainCtrl);
function mainCtrl($scope) {
$scope.dummyData = [
{
"id":"0a40f753-0919-4bb2-b64e-74a280695ac6",
"buildName":"JackPot",
"department":"",
"floor":"",
"roomno":"12345Room",
"wing":"TEST"
},
{
"id":"1ff0d1e3-c347-41ce-8b96-acb695bba7a8",
"buildName":"JackPot2",
"department":"Dept",
"floor":"Testing",
"roomno":"123f",
"wing":"Test"
}
];
}
})();
<!DOCTYPE html>
<html ng-app="app">
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.7/angular.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-filter/0.5.9/angular-filter.min.js"></script>
</head>
<body ng-controller="mainCtrl">
<select ng-model="buildNameng" ng-options="option.floor as option.floor for option in dummyData | unique: 'buildName' | removeWith: { floor: '' }">
<option value="">---Building---</option>
</select>
</body>
</html>
我希望它能有所帮助。
相关文章:
- 如何使用AngularJs禁用ng选项中的选项
- 如何将ng选项的索引作为angularJs中的值传递给模型
- AngularJS ng选项在选择一个选项后删除了默认的空白值
- 当使用select作为标签时,如何使用ng选项禁用angularjs中的选项
- 从服务器获取数据并在选择控件中使用ng选项无法显示选项
- ng选项-用vm替换$scope
- Angularjs-设置不带ng选项的select的默认值
- ng选项-传递键而不是值
- Angular:如何使用ng选项进行四个单独的选择
- 使用ng选项,我如何筛选准确解释给定值的内容
- 角度Ng选项错误
- Angular.js通过对象关键点上的ng选项进行跟踪
- 为什么ng选项指令需要ng模型
- Angular js-ng选项不起作用
- 在<选择>使用angular ng选项可能使用ng init
- 如何在 AngularJS 的 ng 选项中设置值属性
- $localStorage array select with ng选项工作不正常
- 筛选ng选项时语法不正确
- Angularjs使用ng选项进行选择
- Angular中独特的ng选项