javascript - 如何使用 ng-tags-input 添加标签数组?

标签 javascript angularjs autocomplete ng-tags-input

我有一个带有自动完成功能的 ng-tags-input 输入。 自动完成功能可以显示“用户”、“组织”和“邮件列表”(其中包含一组用户和另一组组织)。

当我在自动完成中单击用户时,会创建一个用户标签。 当我单击自动完成中的组织时,会创建一个组织标签。 但是,当我单击自动完成中的邮件列表时,我想将邮件列表中包含的每个用户和每个组织添加为单独的标签。我已经搜索了很多方法来做到这一点,但我不知道如何做到最后一点......

ng-tags-input 建议使用 $removeTag 函数来删除标签,但我还没有找到任何使用 Javascript 添加标签的函数。 如果有人有任何线索,我将非常感激! 谢谢!

最佳答案

您想要将标签添加到 ng-tags-input 中。这意味着 - 我想改变绑定(bind)到 ng-tags-input 的模型。或者,我想将元素插入包含标签的对象数组内。因此,您基本上希望将对象推送到绑定(bind)到 ng-tags-input 指令的模型中。

<tags-input ng-model="tagsModel" >

从列表中选择建议时,您需要将处理程序附加到事件。我想自动完成功能本身允许您将作用域函数绑定(bind)到它。 然后,如果它是“邮件列表”类型,则迭代所选数组的每个元素,构造标签(基本上是 { text: 'value'} 形式的对象)并将其推送到您的tagsModel中。

希望有帮助。如果你附上plnkr,我就能更好地回答这个问题。

关于javascript - 如何使用 ng-tags-input 添加标签数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43743281/

相关文章:

javascript - Angular2 形式的嵌套组?

javascript - 在 JavaScript 中扩展控制台

python - 如何在 IPython 中完成 win32com 代码?

MongoDB Atlas 搜索 - 搜索字符串中的多个术语具有 'and' 条件(不是 'or' )

javascript - $broadcast 仅在使用有限字符时触发

javascript - Aptana Eclipse 插件和 Dojo 自动完成

javascript - Angular 2 中的一个组件如何通过调用另一个组件的方法来弹出另一个组件?

javascript - 无法删除(设置为过期)本地主机上的 cookie

javascript - Angular JS + SharePoint 列表 + Rest API

在两个独立的 Angular 应用程序之间切换时,AngularJS e2e 测试挂起