[英]How can i remove empty/null items from angularjs select dropdown?
'use strict'; var app = angular.module('myApp', []); app.controller('AppCtrl', function($scope){ $scope.mail_notifications = [ { "key": "all", "value": "For any event on all my projects" }, { "key": "selected", "value": "For any event on the selected projects only..." }, { "key": "only_my_events", "value": "" }, { "key": "only_assigned", "value": "Only for things I am assigned to" }, { "key": "only_owner", "value": "" }, { "key": "none", "value": "No events" } ]; $scope.mail_notification = 'all'; });
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular.min.js"></script> <div ng-app="myApp"> <div ng-controller="AppCtrl"> <select ng-model="mail_notification" ng-options="c.key as c.value for c in mail_notifications"></select> </div> </div>
我有一个下面的小提琴链接供参考。
https://jsfiddle.net/maayuresh/mjugfLr0/1/
在上面的小提琴中,我有 json object 命名为 mail_notifications。 在这一些属性是空的,null 像这样->“”
这个 null 值显示在 select 下拉列表中。
我的目标是从 select 下拉列表中删除它。 我怎样才能做到这一点?
供参考,
这个 null 值显示在 select 下拉列表中。
null
不等于""
(空字符串)
过滤value
不是空字符串的项目:
$scope.mail_notifications = $scope.mail_notifications.filter(x => x["value"] != "");
您还可以使用 value is a truthy value过滤项目,如下所示:
$scope.mail_notifications = $scope.mail_notifications.filter(x => x["value"]);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.