Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs ui选择搜索特定对象属性_Angularjs_Angular Filters_Ui Select - Fatal编程技术网

Angularjs ui选择搜索特定对象属性

Angularjs ui选择搜索特定对象属性,angularjs,angular-filters,ui-select,Angularjs,Angular Filters,Ui Select,我可以在ui select中对我的对象的特定字段过滤我的搜索吗?或者我应该创建一个自定义过滤器?我已经看到了这一点,它说这是可行的,但我的以下代码不起作用: <ui-select ng-model="model.selected"> <ui-select-match> <span class="ng-cloak">{{$select.selected.id ? $select.selected.id+ ' (' + $select.se

我可以在<代码>ui select中对我的对象的特定字段过滤我的搜索吗?或者我应该创建一个自定义过滤器?我已经看到了这一点,它说这是可行的,但我的以下代码不起作用:

<ui-select ng-model="model.selected">
    <ui-select-match>
        <span class="ng-cloak">{{$select.selected.id ? $select.selected.id+ ' (' + $select.selected.sn + ') ' : "Select One" }}</span>
    </ui-select-match>
    <ui-select-choices repeat="item in items | filter: {id: $select.search.id, sn: $select.search.sn}">
        <span ng-bind="(item.id) + ' (' + (item.sn)  + ') ' "></span>
    </ui-select-choices>
</ui-select>

{{$select.selected.id?$select.selected.id+'('+$select.selected.sn+'):“选择一个”}

假设
项目
中的每个
项目
具有以下属性:

  • 身份证
  • fn
给定以下数据集:

[ 
    {"id":"Ja111", "sn":"Jacobs","fn":"Jim"},
    {"id":"Ja222", "sn":"Jagger","fn":"Robert"},
    {"id":"Jo111", "sn":"Jones","fn":"Stan"},
    {"id":"J111", "sn":"Johnson","fn":"Alfred"},
    {"id":"Sm111", "sn":"Smith","fn":"Joe"}
]
使用:

<ui-select-choices repeat="item in items | filter: {id: $select.search, sn: $select.search}">
<ui-select-choices repeat="item in items | filter: $select.search">
<ui-select-choices repeat="item in items | propsFilter: {id: $select.search, sn: $select.search}">
将在所有字段中执行“或”操作(例如,搜索条件“Jo”将查找“Stan Jones”、“Alfred Johnson”和“Joe Smith”)

使用:

<ui-select-choices repeat="item in items | filter: {id: $select.search, sn: $select.search}">
<ui-select-choices repeat="item in items | filter: $select.search">
<ui-select-choices repeat="item in items | propsFilter: {id: $select.search, sn: $select.search}">

将对指定字段执行“或”操作(在本例中为
id
sn
)(例如,搜索条件“Jo”将找到“Stan Jones”和“Alfred Johnson”-注意,它不会找到“Joe Smith”,因为过滤器没有查看
fn
字段)

下面显示了上述示例的实际操作


对于您的需求(我假设您需要一个“或”过滤器,但只针对特定字段),我会选择
propsFilter
路径。这似乎也是所使用的。

假设
项目中的每个
项目具有以下属性:

  • 身份证
  • fn
给定以下数据集:

[ 
    {"id":"Ja111", "sn":"Jacobs","fn":"Jim"},
    {"id":"Ja222", "sn":"Jagger","fn":"Robert"},
    {"id":"Jo111", "sn":"Jones","fn":"Stan"},
    {"id":"J111", "sn":"Johnson","fn":"Alfred"},
    {"id":"Sm111", "sn":"Smith","fn":"Joe"}
]
使用:

<ui-select-choices repeat="item in items | filter: {id: $select.search, sn: $select.search}">
<ui-select-choices repeat="item in items | filter: $select.search">
<ui-select-choices repeat="item in items | propsFilter: {id: $select.search, sn: $select.search}">
将在所有字段中执行“或”操作(例如,搜索条件“Jo”将查找“Stan Jones”、“Alfred Johnson”和“Joe Smith”)

使用:

<ui-select-choices repeat="item in items | filter: {id: $select.search, sn: $select.search}">
<ui-select-choices repeat="item in items | filter: $select.search">
<ui-select-choices repeat="item in items | propsFilter: {id: $select.search, sn: $select.search}">

将对指定字段执行“或”操作(在本例中为
id
sn
)(例如,搜索条件“Jo”将找到“Stan Jones”和“Alfred Johnson”-注意,它不会找到“Joe Smith”,因为过滤器没有查看
fn
字段)

下面显示了上述示例的实际操作

对于您的需求(我假设您需要一个“或”过滤器,但只针对特定字段),我会选择
propsFilter
路径。这似乎也是它的用途