【发布时间】:2016-03-30 10:27:26
【问题描述】:
我正在尝试使用 AngularJS 并根据文档创建日期
带有日期验证和转换的输入。在不支持的浏览器中 还支持 HTML5 日期输入,将使用文本元素。在那里面 在这种情况下,必须以有效的 ISO-8601 日期格式输入文本 (yyyy-MM-dd),例如:2009-01-06。由于许多现代浏览器都这样做 尚不支持此输入类型,提供提示很重要 用户通过占位符或标签了解预期的输入格式。
它只接受有效的 ISO-8601 日期格式 (yyyy-MM-dd)。
我尝试在pattern的属性中定义新的日期格式,如下代码所示:
<div ng-app="">
<form name="frmSPA" novalidate>
<input type="date" placeholder="Enter SPA Date" pattern="dd/MM/yyyy" name="SPADate" ng-model="SPADate" ng-required="true" />
<span ng-show="frmSPA.SPADate.$touched && frmSPA.SPADate.$error.required">SPA Date is required</span>
<span ng-show="frmSPA.SPADate.$touched && frmSPA.SPADate.$error.date">Not a valid date</span>
</form>
</div>
但它不起作用。
那么如何将默认日期格式更改为dd/MM/yyyy。这是jsfiddle。
【问题讨论】:
-
@RayonDabre 我认为给出的链接是关于如何格式化日期显示,但我需要文本框接受
dd/MM/yyyy格式 -
我猜这取决于您的系统日期的格式...不确定...
-
@RayonDabre 我在我的系统日期上使用
dd/MM/yyyy格式 -
您考虑过使用ui-bootstrap's datepicker 吗?它有你想要的一切,还有更多
标签: javascript angularjs date