ng标签输入 在最大标签编号之后禁用输入



我有一个问题,也许有人在您的应用程序中使用了ngTagsInput

插入最大标签数量后是否有禁用输入的选项?

ngTagsInput有一个ngModel接受标签数组,因此您可以使用ngDisabled来禁用输入。

问题是,如果您的输入被禁用,您将无法删除任何已经存在的标签并进一步编辑输入。我不建议这样做。

但是你有一些选择...

  1. 验证您拥有的标签数量

API 文档声明max-tags属性用于验证输入内的最大标签数量,当您超过限制时,验证状态将变为$invalid,然后您可以阻止表单提交。

最大标签 - 数字 - 如果添加的标记数大于最大标记数,则设置最大标记验证错误键。

例如:

<tags-input ng-model="tags" max-tags="7">
<auto-complete source="loadTags($query)"></auto-complete>
</tags-input>
  1. 当用户超过允许的标签数量时,使用on-tag-added回调属性进行捕获,只需删除他输入的任何新标签,而无需使用验证标志

.HTML:

<tags-input ng-model="tags" 
on-tag-added="onTagAdded($query, 7)"></tags-input>
<p>Model: {{tags}}</p>

控制器:

$scope.onTagAdded = function(tag, limit) {
if ($scope.tags.length == limit+1) {
$scope.tags.pop();
}
}

在上面的示例中,我们将标签数量限制为 7。

相关内容

  • 没有找到相关文章

最新更新