我已经搜索了几个小时,似乎无法在任何地方找到问题的答案。我记得我曾经能够实现它,但是由于某种原因我丢失了代码,而且我似乎不记得为使它起作用而做了什么。
我正在尝试使用ng-options在选择框中显示来自数组的数据。我没有问题的那个。我需要实现的是,只有某些数组值会显示/包括在选择框中。
我的数据如下:
$scope.chartList = [ { "id" : 1, "name" : "chart 1", "order" : 1, "active" : false },
{ "id" : 2, "name" : "chart 2", "order" : 2, "active" : true },
{ "id" : 3, "name" : "chart 3", "order" : 3, "active" : true },
{ "id" : 4, "name" : "chart 4", "order" : 4, "active" : true },
{ "id" : 5, "name" : "chart 5", "order" : 5, "active" : true } ];
我的HTML看起来像:
<select ng-model="toAddChart" ng-options="chart.id as chart.name for chart in chartList | filter:chart.active=='false'">
<option value=""></option>
</select>
所以我想发生的是,如果属性“
active”的值为false,那么这是数组项唯一显示/包含在选择列表中的时间。我尝试了filter属性的不同排列,但似乎都没有用。
我知道我可以轻松地在标记中使用ng-repeat并使用ng-show,但是我记得在某处读过(同样,我找不到位置),这不是实现它的正确方法,并且使用ng-
options是正确的方式。
我真的很确定自己能够在不创建自定义javascript过滤器的情况下完成此操作,但是对于我一生来说,我不记得自己是如何做到的。我希望有人可以
希望有人可以帮助我,因为我没有主意。
更新:
伟大的斯科特,我想我已经明白了。
代替:
filter:chart.active=='false'
它应该是:
filter:chart.active='false'
这只是所使用的等号的数量。 面容
谢谢大家的回复。
伟大的斯科特,我想我已经明白了。
代替:
filter:chart.active=='false'
它应该是:
filter:chart.active='false'
这只是所使用的等号的数量。面容
谢谢大家的回复。
问题内容: 我刚刚升级到角度版本1.3.8。 当使用1.2.23版本时,我创建了一条指令来将数据表单视图转换为模型,反之亦然。 这是我的指令: }); 我在这里看到现在支持绑定中的getter和setter,但是我在任何地方 都 找不到如何同时使用getter 和 setter的方法。有什么办法吗?那就是-ng-model- options可以代替我的convert指令吗? 谢谢 问题答案: 该文
问题内容: 如何在angularJS中有条件地执行ng-include? 例如,如果变量设置为,我只想包含一些内容。 问题答案: 如果您使用的是Angular v1.1.5或更高版本,则还可以使用ng- if : 如果您有任何旧版本: 使用ng-switch: 小提琴
问题内容: 如何呈现以下选项列表的值? 预期结果(预期为value =“ limit.value”: 结果: 问题答案: 该指令未在元素上设置属性。它始终使用序列。 使用方式: 将的标签设置为 将值保存到选择的 检查此小提琴:http : //jsfiddle.net/bmleite/k58Hw/
问题内容: 我尝试使用AngularJS进行简单的选择下拉列表 这是我的代码: 格式如下: 选择下拉列表出现,但没有任何选择值,我在做什么错? 问题答案: 我相信您缺少ngModel指令,并且以错误的方式调用ng-options指令。 我在这里工作的地方做了个小矮人。
问题内容: 我正在尝试创建一个select元素,该元素的页面编号为1,其中pages是一个变量,即我所拥有的页面数。我不知道该怎么做,是为了构造ng- options表达式,以便它将给我所需的数字。这是我到目前为止的 我需要在ng-options表达式中放置什么才能使其创建我的select 我是否需要创建一个返回数字数组的函数并以某种方式在其中使用它,还是有一种更简单的方法呢? 任何帮助将不胜感激
我在其他的帖子里读到过,但我想不通。 我读过select也试过,但我想不通。