当前位置: 首页 > 面试题库 >

在输入中对ng-model进行过滤

屠坚壁
2023-03-14
问题内容

我有一个文本输入,并且我不想允许用户使用空格,并且键入的所有内容都将变为小写。

我知道我不允许在ng-model上使用过滤器。

ng-model='tags | lowercase | no_spaces'

我看了看创造我自己的指令,但添加功能$parsers$formatters没有更新的投入,只是有其他的元素ng-model就可以了。

如何更改当前输入的内容?

我实质上是在尝试创建“标签”功能,该功能与StackOverflow上的功能相同。


问题答案:

我建议观察模型值并在更改时对其进行更新:http
://plnkr.co/edit/Mb0uRyIIv1eK8nTg3Qng?
p=
preview


唯一有趣的问题是空格:在AngularJS 1.0.3中,输入的ng-
model会自动修剪字符串,因此,如果在结尾或开头添加空格,它不会检测到模型已更改(因此,空格不会自动删除)码)。但是在1.1.1中,有一个“ ng-
trim”指令允许禁用此功能(commit)。因此,我决定使用1.1.1来实现您在问题中描述的确切功能。



 类似资料:
  • 对此,作者提出了建议

  • 问题内容: 我是AngularJS的新手,我遇到的一个问题是无法解决,在stackoverflow上也有类似的问题,但似乎并没有帮助我。我基本上有一个可以通过ng- click更新的表单,但是一旦我在任何文本框中输入文本,这些文本框就不再更新。 这是我的HTML 这是有人单击链接时调用的我的函数 问题答案: 您的链接需要登录。 如果我不得不猜测您的问题,则可能与角度范围问题有关。尝试将ng-mod

  • 问题内容: 我正在为jQuery日期选择器插件创建AngularJS指令,当日期选择器日期更改时,该插件应更新ng-model。 这是到目前为止的代码: 考虑到在调用事件时范围,元素,属性,ngModel不可用,如何在“ dp.change”事件中更新ngModel? 谢谢! 问题答案: 可以肯定的是,已添加到angular的任何插件都不会更新angular范围的,我们需要在它的jquery ch

  • 问题内容: 在用户更改日期之前,日期输入不会显示日期 jsbin中的示例代码 我需要它才能在稳定的1.2.14版本上工作。可能吗? 问题答案: 我创建了一个简单的指令,以使标准表单元素能够与AngularJS〜1.2.16一起正常工作。 请查看此处以获取详细信息:https : //github.com/betsol/angular-input-date 这是演示:http : //jsfiddl

  • 问题内容: 这是我不工作的演示 模型保持不变。如何同步?请注意,数据结构很重要。 问题答案: 的结合将评估在当前范围的表达。作为创建一个子范围,这意味着将寻找一个命名属性的子范畴。在您的示例中,我们希望它在 父 范围内查找属性,该属性的别名为。 这是设计使然,可以通过引用表达式中的父范围来避免这种情况。 工作演示 代码(注意输入元素上的绑定已更改): 当您使用Angular 1.3的Beta版时,

  • 问题内容: 我正在尝试通过使用搜索文本框来过滤ng-repeat中的嵌套对象。 给定以下对象: 我想做这样的事情: 这确实是行不通的。我尝试了很多事情,但无法使其正常运行。 我不想更改我的对象。 我进行了很多搜索,但没有找到符合我需要的内容。 问题答案: 我终于有了自己的问题的答案。 我只需要创建自己的过滤器,并使用正则表达式检查对象内部的属性是否具有所需的值即可: 并以这种方式在HTML中应用它