javascript - 日期的 Angular ng-pattern 在 IE9 上不起作用

标签 javascript regex angularjs angularjs-directive ng-pattern

我正在尝试在 View 中使用 ng-pattern 使用以下日期 (mm/dd/yyyy) 验证模式。

 ng-pattern="/^(\d{4})-(\d{2})-(\d{2})$/"

只要我开始输入日期,就会出现验证错误,即使在输入有效日期(如 10/15/1988)之后仍然存在

我尝试使用 var 将其传递给 Controller ​​(如下所示)但行为相同:

在 Controller 中:

  $scope.myPattern = "/^(\d{4})-(\d{2})-(\d{2})$/";

在 View 中:

  ng-pattern="{{myPattern}}"

注意:这两种方法都不适用于 IE9

最佳答案

怎么样:

 /^((\d{4})-(\d{2})-(\d{2})|(\d{2})\/(\d{2})\/(\d{4}))$/

这将适用于 dd/mm/yyyy 和 yyyy-mm-dd

/^((\d{4})-(\d{2})-(\d{2})|(\d{2})\/(\d{2})\/(\d{4}))$/.test('04/04/1974')
true
/^((\d{4})-(\d{2})-(\d{2})|(\d{2})\/(\d{2})\/(\d{4}))$/.test('1974-04-04')
true

关于javascript - 日期的 Angular ng-pattern 在 IE9 上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22946113/

相关文章:

javascript - 数据表标题在页面加载时不是全宽

javascript - 简单的 AngularJS 示例

javascript - 为什么我无法访问 angularJS 上 ngInclude 内的表单对象?

jquery - 选择框淡入淡出功能?

javascript - 如何从返回 JSON 的 REST Web 服务加载 ng 表中的数据

javascript - 在 Cypress Cucumber 中导入依赖项时出错

javascript - 在 div 中显示 javascript 数组

java - 如何提取包含某个单词的每个句子

java - 了解正则表达式以从字符串中删除 HTML 标记

仅正整数或负整数的正则表达式,不环顾四周