我正在使用此rangeSlider和搜索过滤器来搜索包含WebAPI项目的表列表。我的问题是,搜索过滤器与我的搜索表单中的rangeslider不同步。想象它更好,我告诉你当前的代码片段:在AngularJS中将范围滑块与搜索过滤器结合使用
//Person view:
//rangeSlider
<div class="form-group form-group-sm">
<label class="col-sm-3 control-label">Age:</label>
<div class="col-sm-8">
<div range-slider min="0" max="100" model-min="demo.min" model-max="search.age" pin-handle="min" show-values="true" ng-model="search.age">
</div>
</div>
</div>
...
//table list with items
<tr ng-repeat="person in personslist | filter:search">
<td>{{ person.id }}</td>
<td>{{ person.fname }}</td>
<td>{{ person.age }}</td>
</tr>
...
//PersonCtrl
$scope.demo = {
max: 100,
min: 0
};
我认为ngModel在rangeSlider指令不抢值search.age。在属性model-max中,我也添加了search.age。当我在搜索表单中查找最多8位数字时,它将显示年龄为8,18,38岁的人员等等。但结果必须是0-8。我该如何解决这个问题?我也尝试在属性on-handle-up
中定义一个函数,但我不知道如何抓取filter: search
中的项目。
这是一个很好的解决方案,但过滤器还需要定义其他具有字符串的搜索输入字段。 – yuro
这应该很简单,只需链接过滤器... personlist中的人员范围:search.min_age:search.max_age |过滤器:搜索“ - 只要确保你没有指定”search.age“,因为这将再次触发年龄字段的文本搜索! – seanhodges
我试过这个定义,但它给了我非物品。只有rangeSlider有效。 – yuro