鍍金池/ 問答/HTML5  HTML/ 通過js給input[type=date]設(shè)置日期的奇葩問題?

通過js給input[type=date]設(shè)置日期的奇葩問題?

如題詳述: HTML5控件, <input type="date" id="time" value="" />,通過js給表單設(shè)置時間并顯示,我的寫法:

方法一:

document.getElementById('time').setAttribute('value', '2017-11-09');

或者

方法二:

$('#time').val('2017-11-09');

在手機端測試iOS或Android,不是chrome或Safari(因為瀏覽器都能正常顯示)。

方法一竟然不能顯示,而方法二卻可以顯示。這種特性也真是奇葩了,你么碰到過了嗎?

回答
編輯回答
未命名

時間寫法用 2017/11/24 兼容性更好

2018年9月20日 04:35
編輯回答
柒喵
document.getElementById('time').value = '2017-11-09';

使用 setAttribute() 修改某些屬性值時,可能得不到期望結(jié)果,尤其是 XUL 中的 value,這是由于 attribute 指定的是默認值。要訪問或修改當(dāng)前值,應(yīng)該使用 property 屬性。例如,使用 elt.value 代替 elt.setAttribute('value', val)。

https://developer.mozilla.org...

2017年6月23日 20:41