gpt4 book ai didi

javascript - AngularJS:使用基于选择的过滤器后,如果仅限于单个属性,则不会清除

转载 作者:行者123 更新时间:2023-11-29 10:46:34 25 4
gpt4 key购买 nike

当仅限于一个属性时,我不知道如何清除基于选择的过滤器。这是数据:

  $scope.items = [
{'name': 'Adam', 'fruit': 'apple'},
{'name': 'Shelley', 'fruit': 'apple'},
{'name': 'Barbara', 'fruit': 'plum'},
{'name': 'Steve', 'fruit': 'Adam\'s apple'},
{'name': 'Marty Appleton', 'fruit': 'onion'}
];

这就是我想要过滤它的方式,在项目 name 属性中搜索过滤器的文本:

    <select ng-model="select1.name" ng-options="item.name as item.name for item in items">
<option value="">No filter</option>
</select>

<div ng-repeat="item in items | filter:select1">
{{ item.name }}: {{ item.fruit }}
</div>

当我选择其中一个选项时,列表会按预期过滤。但是当我再次选择空的“无过滤器”选项时,显示的列表是空的。如果我不将过滤器限制为一个属性,即使用 ng-model="select1" 而不是 ng-model="select1.name" .如果我改为使用文本输入,它也可以工作。

这是一个实际的工作示例——您会注意到您无法使用右下角的选择来清除过滤器,但可以使用所有其他元素。

http://codepen.io/anon/pen/vLHqa

我迷路了。我做错了什么?

最佳答案

更改为:

<select class="problem" ng-model="select1" ng-options="item.name for item in items">

这将是工作。 http://codepen.io/anon/pen/qroJp

关于javascript - AngularJS:使用基于选择的过滤器后,如果仅限于单个属性,则不会清除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18573591/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com