我一直在环顾世界相当一段时间,但没有一个甚至远程关闭的问题,我似乎包含这个答案。角度下拉选项添加选项获取数据
情况如下:
我使用AngularJS填充下拉(或选择,如你所愿)(^ 1.6.2)从数据库中读取数据。这个数据放在这个选择使用ng-options
与一切正确设置和所有。
我试图做到的,是一个NULL
选项被添加到此选项列表,但不包含所获取的数据$scope
对象。
我会用一些代码澄清:
<select ng-options="item as item.name for item in items track by item.id"
ng-model="forms.formDataObject.item">
</select>
这会产生一个选项列表,像这样:
<select ...>
<option value="1">Item 1</option>
<option value="2">Item 2</option>
<option value="3">Item 3</option>
...
</select>
我试着用NULL
选项添加到这个下拉以下Angular过滤器:
app.filter('addNullOption',() => {
return (input) => {
if (!input[0].null_option) {
var emptyObj = angular.copy(input[0]);
Object.keys(emptyObj).forEach((key) => {
emptyObj[key] = null;
});
emptyObj.null_option = true;
input.unshift(emptyObj);
}
return input;
};
})
然后在中应用过滤器与其他过滤器一样。
此方法有效,但将NULL
选项添加到$scope
对象,而不是仅在此下拉列表的$scope
中可用。我不希望发生这种情况,因为整个应用程序中的其他下拉列表使用相同的$scope
对象来填充下拉列表,并且它们应该不是有此NULL
选项可用。
概括地说,这是我的问题:我想能到NULL
选项添加到预填充下拉列表中,仅在特定下拉的$scope
。
任何人都可以引导我在正确的方向吗?
我已经试过你确切的解决方案,但问题依旧。 –
你可以发布'物品'数组 –
它是http://i.imgur.com/8NHv0dy.png –