我正在为我正在开发的网站使用https://github.com/angular-ui/ui-select。目前代码如下:
<ui-select ng-model="model.states">
<ui-select-match placeholder="State">
{{$item.Name}}
</ui-select-match>
<ui-select-choices repeat="item.Code as item in statesArray | filter:$select.search">
{{item.Name}}
</ui-select-choices>
</ui-select>
当我在输入字段中键入任何内容时,例如“a”,ui-select-choices 会显示所有包含“a”的字段(默认情况下)。我想做的是,我只想显示所有以“a”开头的状态。如果在输入框中没有输入任何内容,则按字母顺序显示所有字段。有人可以提出解决方案吗?我看到其他帖子很少,但还没有人回答这个问题。提前致谢。
例子
这是一个示例,假设 states 数组包含加利福尼亚州、康涅狄格州、阿拉斯加州、亚利桑那州、纽约州等州。
如果在输入字段中没有输入任何内容,下拉列表应显示阿拉斯加、亚利桑那、加利福尼亚、康涅狄格、纽约(可以使用 orderBy 过滤器实现)。
如果用户在输入字段中键入“a”,下拉菜单应显示阿拉斯加、亚利桑那,并且没有其他字段,因为阿拉斯加和亚利桑那只是以“a”开头的字段。如果用户键入“c”,下拉菜单应显示加利福尼亚州、康涅狄格州。如果用户输入“ca”,下拉菜单应该只显示 California,因为它只匹配给定的输入字符串。