我正在处理数据库中的动态下拉列表,我想从行中删除重复项,这样列表中就不会出现多个值。我试图放入下拉列表中的字段是“地区”
JS
.controller('send_msg_district_ctrl',function($scope,$http,$location){
$http.post('http://localhost:8080/Admin/calls/app_users.php').success(function(data){
$scope.district=data;
console.log(JSON.stringify(data));
})
})
.filter("removeDups", function(){
return function(data) {
if(angular.isArray(data)) {
var result = [];
var key = {};
for(var i=0; i<data.length; i++) {
var val = data[i];
if(angular.isUndefined(key[val])) {
key[val] = val;
result.push(val);
}
}
if(result.length > 0) {
return result;
}
}
return data;
}
})
HTML
<select ng-model="item.District" ng-options="option for option in district | removeDups">
<option value="" disabled>
Please select an option
</option>
</select>
当我点击下拉菜单时,我得到[object object]
最佳答案
如果district是一个对象数组,则必须以其他方式使用ng-options
。
您会在下拉列表中看到 [object object]
,因为您是这样设置的。
我很确定你的对象有标题值或类似的东西? 在这种情况下你必须使用:
<select ng-model="item.District" ng-options="option as option.title for option in district | removeDups">
[...]
</select>
关于javascript - 使用 angularjs 从下拉列表中删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45014529/