标签: ng-tags-input

ng-tags-input,如何禁用用户输入?

我正在寻找如何禁用此指令指令的用户输入,我想要做的是控制器在视图中发生的某些事件上插入值。

我浏览了 API,但并没有真正找到如何做到这一点。我什至尝试过使用该disabled属性

<tags-input ng-model="filterTags" disabled></tags-input>
Run Code Online (Sandbox Code Playgroud)

发生的情况是样式变成灰色,但我仍然可以手动插入值。

angularjs ng-tags-input

4
推荐指数
1
解决办法
4428
查看次数

未知提供者:ngTagsInputProvider < - ngTagsInput

我将这样的2.1.1版ngtagsinput注入到我的控制器中:

app.controller('homeCtrl', ['$scope','$http','ngTagsInput', function($scope,$http){
}])
Run Code Online (Sandbox Code Playgroud)

*注意:测试!将ngTagsInput添加到函数()中不会有所作为......

我在angularjs lib之后加载了ngtagsinput lib.

我想知道还有什么我可以测试来解决以下错误:

Error: [$injector:unpr] Unknown provider: ngTagsInputProvider <- ngTagsInput
http://errors.angularjs.org/1.2.9/$injector/unpr?p0=ngTagsInputProvider%20%3C-%20ngTagsInput
Run Code Online (Sandbox Code Playgroud)

不要误会我的意思,我知道基本上没有检测到这个提供商.

但我发现了我的lib(没有报告404),我看到它的库中使用了ngTagsInput ....

所以,它真的困扰我同样的解决方案不再适用于这个lib!这个lib有什么特别的,为什么在我遇到所有修复它的标准时会出现这个错误?

angularjs angularjs-service ng-tags-input

3
推荐指数
1
解决办法
1240
查看次数

如何访问ng-tags-input中的剩余文本

输入中的左侧文本是否以编程方式可访问?如果是这样,怎么样?

我只允许自动完成标记(用作搜索过滤器),并希望使用左侧文本作为附加关键字,这意味着我想知道它是否绑定到任何东西,所以我可以将它传递给搜索功能.

谢谢您的帮助

ng-tags-input

2
推荐指数
1
解决办法
1884
查看次数

ng-tags-input on-tag-click handler:有更好的方法吗?

更新2015.06.01

此问题已在库中解决 - https://github.com/mbenford/ngTagsInput/pull/239

问题

ng-tags-input没有on-tag-click处理程序,以便用户单击标记以通过角度表达式引发函数调用:

<!-- does not exist -->
<tags-input on-tag-click="handleTagClick(data)"></tags-input>
Run Code Online (Sandbox Code Playgroud)

angularjs-directive ng-tags-input

1
推荐指数
2
解决办法
3540
查看次数

如何在ngTagsInput(而不是正则表达式)中进行自定义验证?

例如,我想添加自定义验证,其中addedValue <20,如何实现它?

<tags-input ng-model="numbers"
        placeholder="Add a number"
        min-length="1"
        max-length="3"
        allowed-tags-pattern="^[0-9]+$"
        onTagAdded="$tag<20"></tags-input>
Run Code Online (Sandbox Code Playgroud)

这是我使用的代码.

javascript validation angularjs angularjs-directive ng-tags-input

1
推荐指数
1
解决办法
2590
查看次数

保存 id 数组而不是对象

我有这个 HTML 元素:

<tags-input
   ng-model="film.genre"
   display-property="name"
   key-property="id"
   placeholder="Genre"
   replace-spaces-with-dashes="false">
  <auto-complete source="loadGenres($query)"></auto-complete>
</tags-input>
Run Code Online (Sandbox Code Playgroud)

这会创建一个与 Stackoverflow 上类似的标签输入字段。这是正在使用的包http://mbenford.github.io/ngTagsInput/

现在 loadGenres 将返回一个像这样的对象{name: "Genre name", id: 4}。它将被存储film.genre为这样。这是一个问题,因为 API 服务film.genre = [4, ...]基本上期望它必须是一个 id 数组。

我不完全确定如何解决这个问题。我试图在我的newFilm()方法循环中创建一个空数组film.genre并将 id 从它添加到该数组而不是将它分配给film.genre. 然而,这不起作用,因为当我在输出电影之后我仍然得到一个对象数组,其中 name: id 通过某些逻辑。

我在 film.genre 中得到了什么:

"genre": [ 0: { "id": 1, "name": "Action" }, 1: { "id": 5, "name": "Comedy" }, ..]  
Run Code Online (Sandbox Code Playgroud)

我需要的:

"genre" : [1, 5]
Run Code Online (Sandbox Code Playgroud)

javascript angularjs ng-tags-input

1
推荐指数
1
解决办法
1099
查看次数