[英]Parsing ISO-8601 format date not working in IE 9
我有一个从ajax响应返回的日期(请参阅dateValue变量)。 解析该值适用于chrome,但不适用于IE 9。
我有什么想念的吗? 任何帮助/建议表示赞赏。
var dateValue = "2015-08-12T16:31:51.68"; $('#result').text(Date.parse(dateValue));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <label id="result"></label>
IE9处于怪异模式,而您希望它处于标准模式。
若要了解如何强制标准模式,请参见以下答案: 如何强制Internet Explorer在标准模式下而不是在怪癖中渲染?
在怪癖模式下, 只有IE6支持javascript才能起作用 。 直到版本9, Date.parse
才是IE中的JS功能。
要检查您是否处于怪癖模式,请运行以下JS:
alert('You are in ' + (document.compatMode==='CSS1Compat'?'Standards':'Quirks') + ' mode.')
ES5中添加了ISO-8601日期解析,因此并非所有浏览器都支持它。
检查此 github项目以获取可能适合您的实现。
或者,您可以使用诸如moment.js之类的库来提供更好的跨浏览器功能。
var dateValue = "2015-08-12T16:31:51.68";
$('#result').text(moment(dateValue););
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.