问题标签 [ng-pattern]
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.
angularjs - ng-pattern 改变,但形式说信息是有效的
因此,当前代码如下所示:
当我更改表单上的输入时,我更改了正则表达式。问题是之前有效的数据(对于新的 RegEx 不应该有效)仍然有效。如何强制表单再次将正则表达式应用于该字段,而不是等待用户再次模糊该字段?
javascript - ng-pattern 可以保持条件吗?
以下行的正确方法是什么?
我的问题是,我在ng-pattern
不需要时隐藏了该字段,但仍然不允许表单有效。
我尝试禁用该字段,但没有运气。
代码是:
angularjs - angularJS ng模式不起作用
请看一看。
http://plnkr.co/edit/DuTFYbLVbPkCIvRznYjG?p=preview
其中 ng-pattern regEx 不会应用于输入文本字段。
只有正确应用所需的验证。
HTML:
JS:
有什么建议吗??
-谢谢
ng-pattern - AngularJS ng 模式行为
我有一个ng-pattern来强制执行特定格式(例如,IP v4 地址):
数据来自数据库,但假设需求发生了变化,现在应该存储IPv6 。我本来希望更改正则表达式,但它会删除输入的内容!检查这个 plunker(在那里你可以看到丢失内容的效果):http ://plnkr.co/edit/UPrU35
这与将输入切换为必需是一样的,我只需要用户遵守新规则。
问题:
应该如何继续应用 ng-pattern 但仍保持 ng-model 绑定? (我希望表单输入无效,但不以丢失以前的内容为代价)
javascript - 正则表达式 ng-pattern angularjs
我必须验证输入字段,但是当用户在输入中复制和粘贴某些内容时出现问题
这是我的代码
coordsPattern 是:
输入可以采取
.....ETC
但是当用户从不同的页面复制并粘贴相同的内容时,取决于浏览器到浏览器,输入看起来像(158|158)
但模式无效,因为复制时字符之间存在隐藏的选项卡或空格。例如
但是在输入文本中(158|-158
,对于用户来说
,输入是有效的输入是有效的(因为在calculate()
函数中我从空格和制表符中清除了输入)但是对于该模式无效并且角度不执行该calculate()
函数。
这是包含隐藏标签的复制粘贴文本
谢谢
编辑
这是字符串的 var_dump
它包含特殊字符!既不是制表符也不是空格!
也许我必须找到一个不同的解决方案来验证输入......
javascript - 日期的角度 ng-pattern 不适用于 IE9
我正在尝试使用 ng-pattern 来使用低于日期(mm/dd/yyyy)的验证模式。
一旦我开始输入日期,验证错误就会出现并且即使在具有有效日期(例如 1988 年 10 月 15 日)之后仍然存在
我尝试使用 var 通过控制器传递它(如下所示),但行为相同:
在控制器中:
在视图中:
注意:这两种方法都不适用于 IE9
angularjs - $scope.var 在 angularjs 中给出 undefined
我正在使用 angularjs 在文本框上进行客户端验证,我只需要输入字母数字字符即可。如果文本框留空或输入了非字母数字字符,则提交表单会向 JS 发送所需的“false”,但问题是它本身没有传递非字母数字字符(在范围内)。
JSP 文件:
JS文件:
现在,当我在 jsp 中的输入框“地址”中输入一个字母数字字符时,它在 JS 中警告它时给了我未定义的定义(可能是因为过滤字符为非字母数字的模式)。如果我删除 ng-pattern,它会通过 submitForm 传递“真”,就好像每个输入都是“预期的”。我想访问 $scope.address 的原因是检查和评估并显示“空”和“非字母数字”验证的不同错误消息。
任何帮助表示赞赏!
regex - Angular ng-pattern preventing value from binding
I have an input that uses ng-pattern like so:
However, if I try and change my payment.amount in scope, like so:
It fails to bind. Note the regex - if the amount has a decimal place, it must include two digits after it. If it doesn't, it fails validation.
See obligatory plunker: http://plnkr.co/edit/TIltn1NEHdN3so6GnTQi?p=preview
The Question: how can I get it to bind correctly, preferably with a 0 at the end of the number?
javascript - 更改 ngPattern 使用的正则表达式时如何立即重新验证
假设我有一个由 ngPattern 验证的当前有效的文本框。我现在将正则表达式更改为与文本框值不匹配的正则表达式。Angular 不会立即发现文本框现在无效 - 用户必须进行更改(例如,键入另一个字母)才能对新的正则表达式进行验证。
一种解决方法是在正则表达式更改时通过将 $viewValue 设置为自身来强制解析管道运行,例如:
看法
控制器
但是,这似乎是一个大技巧,我希望有一种更好的方法可以做到这一点,而无需求助于自定义指令。
小提琴:http: //jsfiddle.net/5jm2V/2/
angularjs - 节目 ?当文本框具有用于数字验证的 ng 模式时,在文本框中
我需要显示“?” 当值无法从扫描仪读取时,通过包含“?”返回我的值
假设文档的 sr no 为“123”,但假设由于某种原因扫描仪无法读取它,然后它返回我为“12?” 或者 ”???” 或“?23”或“1?3”
如果任何不可读的数字需要用户手动更正,我需要将它们显示到文本框中。
在我们的应用程序中,我们使用 angularjs 验证,它不允许我在文本框中显示上述值,因为它包含“?” 这不是数值。
此外,我应该强制执行数字验证,以便用户可以更正上述内容并提交给服务器。
那么我们如何实现这个功能呢?
JS代码
我创建了如下示例。
请检查 JsFiddle示例
-谢谢