2017-08-02 98 views
0

我用AngularJS获取当前文化日期格式

https://code.angularjs.org/1.6.5/angular.min.js 
https://code.angularjs.org/1.6.5/i18n/angular-locale_en-us.js 

我需要获得当前

DATETIME_FORMATS.shortDate 

<input type="date" name="fromdate" id="fromdate" 
     placeholder="MM/DD/YYYY" ng-model="fromDate" /> 

这样的事情?

<input type="date" name="fromdate" id="fromdate" 
     placeholder="{{$locale.DATETIME_FORMATS.shortDate}}" ng-model="fromDate" /> 

回答

0

内部控制,注入$现场服务&有范围变量来设置日期格式:

$scope.localDateFormat = $locale.DATETIME_FORMATS; 

,并考虑为:

<input type="text" name="fromdate" id="fromdate" 
     placeholder="{{localDateFormat.shortDate}}" ng-model="fromDate" /> 

同样,这会如果你只工作'type='text''将会失败,因为日期类型在所有浏览器中都是本地处理的。它甚至不支持IE12的Firefox &。所以更好的方法是只有文本字段&某些通用日期选择器库,如ui-bootstrap或支持所有浏览器的角度材料日期选择器。在official docs中,如果输入类型为date(对于不支持的浏览器,您可以使用占位符),则它们尚未提供占位符。

(它仍可以通过使用类型的日期,但由不同寻常的DOM操作等具有的onfocus把它变成日期&的onblur回文本文本字段&来实现,只是为了显示用户定义的占位符)

Plunker