问题标签 [angular-validation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
839 浏览

javascript - 在 angular-js 中以编程方式触发表单验证

我正在使用自定义指令以编程方式提交表单,但是在提交表单之前没有应用表单验证。我已经调用$setDirty()了表单域和$setSubmitted()表单,但即使所需的表单域为空,表单仍会提交。

指令/external.submit.js

foo/foo.controller.js

foo/foo.html

0 投票
0 回答
38 浏览

angularjs - 带有嵌套实体的AngularJS验证不起作用

我正在为我的一个项目制作大型表格。

这就是我设计表单的方式

我试图用上述选项验证它们,但它们都不起作用,我可以知道可能是什么原因吗?

更新

这是 html 的生成方式。

0 投票
6 回答
4122 浏览

javascript - 如何使用 Angular jQuery Validate 的 checkForm() 函数

编辑:

我添加了一个 JsFiddle,因此您可以轻松排除故障,而不必自己设置环境。如您所见,甚至在元素上的blur事件之前就已在电子邮件字段上完成验证,该事件是由被更改触发的。如果您注释掉元素上的,您会发现问题没有发生。input$scope.Emailng-show="!mainForm.validate()"<p>


我正在使用jQuery Validate 的 Angular 实现,并且我需要能够在不显示错误消息的情况下检查表单是否有效。我在网上看到的标准解决方案是使用jQuery Validate的checkForm()函数,像这样:

但是,我正在使用的 Angular 包装器目前没有实现该checkForm功能。我一直在尝试修改源代码以将其引入,我担心我的头绪。代码小而简单,我将其粘贴在这里:

我希望能够使用它来显示或隐藏消息,如下所示:

我不只是使用的原因!mainForm.validate()是因为这会导致错误消息在元素“模糊”远离之前显示在元素上,这是我试图避免的。谁能帮我在checkForm()这个角度指令中实现这个功能?

0 投票
2 回答
1808 浏览

javascript - Angularjs ng-禁用

我有两个用于验证电子邮件和密码的输入。我可以看到以下作品的个人:

使用所需的输入值验证输入表单和

验证我的正则表达式电子邮件

如果我要打印 ie {{ with the above code}},我可以看到验证输入及其正确性的布尔结果。但是,当我在带有两个表达式的按钮上使用 ng-disabled 时,它不起作用,但是如果我只用一个表达式放置 ng-disable,我可以看到它确实有效,但我无法同时放置两个表达式,即

目前,根据第一个表达式,结果变为真,但我认为 && 意味着需要满足两个条件才能使结果为真?可能是因为输出是 true + false = true 吗?

0 投票
0 回答
123 浏览

javascript - 使用 nggetext 翻译 JQuery 验证器消息

我正在使用 angularJS,并且我想翻译 JQuery 验证具有的要求消息。对于翻译,我使用 grunt nggettext,效果很好。问题是没有过滤翻译。

这是我的代码:

HomeController 是属于状态的控制器。

它总是打印“MANDATRY FIELD”,而不是翻译。有谁知道我该如何解决这个问题?

谢谢!

0 投票
1 回答
108 浏览

angularjs - 如何在自定义元素上反映验证状态?

我已经构建了一个自定义角度组件来从集合中选择多个元素。这个自定义元素有一个数组作为 ngModel。我希望它反映验证状态,即:ng-invalid ng-invalid-required。

如果我在自定义元素的 tpl 中添加带有此 ngModel 的输入字段,则验证状态将正确更新。但是如果它在这个自定义元素的包装 div 上,它就不起作用:

如果包含该自定义元素的表单被提交,则验证状态会正确反映在输入中。它获取 css 类:“ng-invalid ng-invalid-required”。但同样的事情并没有发生在 div 上。

如何使这发生在 div 上?

编辑:为了给出一些上下文,该组件是一个自动完成下拉的东西,它允许从下拉列表中显示的列表中选择多个元素。选择后,该项目将进入选定项目列表,呈现为“标签”。它类似于 select2“标记支持”示例:https ://select2.github.io/examples.html

为了实现这一点,我将输入包装在容器 div“.pseudoField”中。单击容器 div 时,它将焦点传递给该输入元素。输入已删除其边框样式,因此它是“不可见的”。当输入聚焦时, div.pseudoField 的样式会发生变化,使其看起来像聚焦。这样,对于用户来说, div.pseudoField 就像一个表单元素,我希望它也具有验证状态。希望这是有道理的。

0 投票
2 回答
4285 浏览

angular - 如何引用 ngFor 中添加的控件?

我在模板驱动的表单中使用 ngFor 添加了几个输入,并且我想在输入无效时添加相应的错误消息。通常,如果我不使用 ngFor,我会使用 #inputName="ngModel"。为了引用动态添加的输入,我有什么办法可以做这样的事情吗?

基本上我想做这样的事情:

0 投票
2 回答
2616 浏览

validation - Angular 2,带参数的自定义验证消息

我刚从 JS/Typescript 和 Angular 2 开始,我正在努力解决以下问题。

}

这只是验证器工厂的一个非常基本的示例。

我发现的所有示例都直接在模板中编写了验证消息/错误(我正在使用模板表单)

是否可以将验证消息“绑定”到验证器本身并使用参数?

喜欢:

这将从验证器本身返回。

还是有另一种方法(除了将所有内容存储在某个地方的变量中)?

0 投票
1 回答
72 浏览

angular - Angular 2.0 中的模型驱动表单验证问题

在 Angular 2.0 中,使用 Form Builder 的模型驱动表单,我有,

在 HTML 中我有:

但是发生的事情是我在文本框中更改的每个字母 alert("Change detected"); 都被解雇了,而不是在 tabout 之后我只需要调用 alert("Change detected"). 我知道在 Angular 1.x 中可以通过使用来实现这一点,ng-model-options但是如何在 Angular 2.0 中实现同样的效果?

0 投票
1 回答
338 浏览

javascript - ng-invalid ng-invalid-required 显示错误信息

我正在使用表单,有名为 DOB 的行,用户必须选择月份、日期和年份,但问题是即使我选择了日期和年份也显示错误消息。当我开始调试时注意到该字段的状态无效(即使我选择了数据)。