Автоматическая вставка даты и времени в поле ввода формы?

используя javascript, как мы можем автоматически вставлять текущую дату и время в поле ввода формы.

Я создаю форму "проблемы", чтобы отслеживать жалобы пользователей на определенную услугу. Я собираю как можно больше информации. Я хочу сохранить персонал здесь от необходимости вручную вводить дату и время при каждом открытии формы.

У меня есть этот фрагмент кода:

<input id="date" name="date" value="javascript:document.write(Date()+'.')"/>

но это не работает.

большое спасибо за любая помощь.

10 ответов


Javascript не будет выполняться в атрибуте value. Вы могли бы сделать что-то вроде этого, хотя:

<input id="date" name="date">

<script type="text/javascript">
  document.getElementById('date').value = Date();
</script>

вы, вероятно, захотите отформатировать дату, как вы предпочитаете, потому что вывод по умолчанию Date () выглядит примерно так: Tue Jun 16 2009 10:47:10 GMT-0400 (Eastern Daylight Time). См.это так вопрос для получения информации о форматировании даты.


<input type="date" id="myDate"  />

<script type="text/javascript">
function SetDate()
{
var date = new Date();

var day = date.getDate();
var month = date.getMonth() + 1;
var year = date.getFullYear();

if (month < 10) month = "0" + month;
if (day < 10) day = "0" + day;

var today = year + "-" + month + "-" + day;


document.getElementById('myDate').value = today;
}
</script>

<body onload="SetDate();">

найдено здесь:http://jsbin.com/oqekar/1/edit?html,js, выход


см. пример,http://jsbin.com/ahehe

используйте описанную утилиту форматирования даты JavaScript здесь.

<input id="date" name="date" />

<script>
   document.getElementById('date').value = (new Date()).format("m/dd/yy");
</script>

самый быстрый способ получить форматирование даты, что любой хорошо использовать datejs.

lib очень прост в использовании и дает вам очень красивое форматирование.


что касается фрагмента кода, не используйте документ.пишите, если можете. попробуй!--4-->

 document.getElementById("date").value = new Date().toUTCString(); 

Если вы используете HTML5 date

используйте этот код

HTML-код

<input type="date" name="bday" id="start_date"/>

Java Script

document.getElementById('start_date').value = Date();

$("#startDate").val($.datepicker.formatDate("dd/mm/yy", new Date()));
$("#endDate").val($.datepicker.formatDate("dd/mm/yy", new Date()));

добавьте приведенный выше код в конце скрипта. Это необходимо, потому что плагин datepicker не имеет возможности установить дату в элементе управления при инициализации.


<input id="date" name="date" />
<script type="text/javascript">
document.getElementById("date").value = new Date();
</script>

похоже, вы собираетесь хранить значение, которое содержит поле ввода после отправки формы, что означает, что вы используете язык сценариев. Я бы использовал его вместо JavaScript, поскольку большинство языков сценариев имеют лучшие параметры форматирования времени / даты. В PHP вы можете сделать что-то вроде этого:

<input id="date" name="date" value="<?php echo date("M j, Y - g:i"); ?>"/>

который заполнит поле "Jun 16, 2009 - 8:58"


другой вариант:

<script language="JavaScript" type="text/javascript"> 
document.getElementById("my_date:box").value = ( Stamp.getDate()+"/"+(Stamp.getMonth() + 1)+"/"+(Stamp.getYear()) );
</script>

var date = new Date();

document.getElementById("date").value = date.getFullYear() + "-" + (date.getMonth()<10?'0':'') + (date.getMonth() + 1) + "-" + (date.getDate()<10?'0':'') + date.getDate();

document.getElementById("hour").value = (date.getHours()<10?'0':'') + date.getHours()  + ":" + (date.getMinutes()<10?'0':'') + date.getMinutes();