ui-select
不允许在选择列表项中插入重复的值。我有一个用例,用户可以多次输入一个值。不会从下拉列表中选择用户输入的值。
是否可以使用ui-select
指令实现此目的?
<ui-select multiple tagging tagging-label="(custom 'new' label)" ng-model="ctrl.multipleDemo.colors" theme="bootstrap" sortable="true" ng-disabled="ctrl.disabled" style="width: 300px;" title="Choose a color">
<ui-select-match placeholder="Select colors...">{{$item}}</ui-select-match>
<ui-select-choices repeat="color in ctrl.availableColors | filter:$select.search track by $index">
{{color}}
</ui-select-choices>
</ui-select>
以下是样本plu http://plnkr.co/edit/s407ooeoeFh2dH9DynZy?p=preview
用户可以在此ui选择中输入手动值,如“a”。输入“a”一次后,用户可能无法再次输入“a”,因为ng-repeat不允许重复值。我尝试使用$ index跟踪,以便它可以采用数组位置,但我无法输入两次相同的值。
答案 0 :(得分:1)
ui-select目前不支持此功能。我{昨天requested this feature,不幸被拒绝了。我已经在自己的分支(see commit)中实现了它并将其与问题相关联。
如果您仍然需要此功能,可以尝试分配/下载我的仓库,切换到feat-duplicates-allowed
分支并使用gulp构建代码。要启用,只需将duplicates-allowed="true"
添加到ui-select
元素。
如果您认为它是对图书馆的有用贡献,请随意添加赞美或评论UI选择问题。
免责声明:我的单位测试了该功能的基本案例,它适用于我的用例,但我还没有对边缘案例进行过广泛的测试。