使用Javascript的内部毫秒时钟预填充表单字段

时间:2017-05-26 03:29:35

标签: javascript date html-form unix-timestamp auto-populate

我的网站上有一个表单,我需要预先填充当前的unix毫秒时间戳。

我确实有另一个表单字段(以相同的形式),它使用以下代码成功预填充日期(月,日,年):

 <div>DATE<br><input name="date" id="date"></div>

 <script>
 (function() {
 var days = ['','','','','','',''];
 var months =
['Jan','Feb','Mar','Apr','May','June','July','Aug','Sept','Oct','Nov','Dec'];
Date.prototype.getMonthName = function() {
return months[ this.getMonth() ]; };
Date.prototype.getDayName = function() {
return days[ this.getDay() ]; }; })();
var now = new Date();
var day = now.getDayName();
var month = now.getMonthName();
document.getElementById('date').value = day + ' ' + month + ' ' + 
now.getDate() + ', ' + now.getFullYear();
</script>

然而......尝试使用此代码使用Unix毫秒时间戳预先填充第二个表单字段时,我没有同样的运气:

 <div>TIMESTAMP URL<br><input name="timeStampURL" id="timeStampURL"></div>

 <script>
 var d = new Date();
 document.getElementById('timeStampURL').innerHTML = d.getTime();
 </script>

我不明白为什么这两个代码的行为方式不同,但是对于如何让该脚本预先填充该字段的任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:1)

输入元素没有任何内容,因此设置 innerHTML 属性不会执行任何操作。您的第一个功能是设置属性,第二个功能也是如此:

&#13;
&#13;
function showTimeValue() {
  document.getElementById('timeValue').value = Date.now();
}

window.onload = showTimeValue;
&#13;
<input id="timeValue">
<button onclick="showTimeValue()">Update time value</button>
&#13;
&#13;
&#13;

每次运行代码时,您都会获得更新的值。