我正在编写一个大量处理日期的应用程序。
所以,我在日期时间,日期,月份和星期使用新的HTML5输入类型......
令人惊讶的是我发现这不适用于IE10。我使用的是IE版本10.0.9200。
要查看此信息,请打开该页面:Test Link
我的典型输入类型看起来像(我也使用Tweeter Bootstrap):
<div class="col-md-8">
<div class="form-group">
<label for="dateTime">Período do Relatório</label>
<input type="date" class="form-control" id="reportDate">
</div>
<script>
var isoString = toLocalIsoString(new Date());
document.getElementById("reportDate").value = isoString.substr(0, 10);
</script>
</div>
他们后来我改变了我需要的类型,如:
document.getElementById('reportDate').type = 'week';
或
document.getElementById('reportDate').type = 'month';
在Chrome中它工作真的很好,打开选择窗口供用户选择一周的月份,但在IE中我得到以下错误(已翻译):
0x80070057 - Javascript execution time error. Invalid argument.
所以,根据这种情况:
a)我在这里做错了什么?
b)如果没有,我如何在IE10中支持这些HTML5。
c)如果事实上这在IE10中不起作用,那么有什么类似行为的替代方案(弹出一个小窗口,以便用户选择月份,日期,星期等)。提前感谢您的帮助。
答案 0 :(得分:3)
答案 1 :(得分:1)
也许Internet Explorer和Firefox不支持它。请在此处查看链接!
http://www.w3schools.com/html/html5_form_input_types.asp
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Input
对于最后一个链接,请检查页面末尾的浏览器兼容性
答案 2 :(得分:1)
According to quirksmode,HTML5高级表单标记功能(如日期)不受支持。
答案 3 :(得分:1)
多数浏览器不支持日期输入。
由于您已在项目中使用Bootstrap,我建议您使用bootstrap-datepicker javascript插件。
答案 4 :(得分:0)
Angular JS有这个问题(所有很酷的孩子都使用它)。短期修复是在index.html中包含一个脚本引用babel-es6-polyfill。查看打字稿以供将来实施。
<script src="node_modules/babel-es6-polyfill/browser-polyfill.min.js"></script>