web-dev-qa-db-ja.com

フォーム入力フィールドに日付と時刻を自動挿入しますか?

JavaScriptを使用して、現在の日付と時刻をフォーム入力フィールドに自動挿入するにはどうすればよいですか。

特定のサービスについてユーザーが送信した苦情を追跡するために、「問題」フォームを作成しています。できる限り多くの情報を収集しています。ここでスタッフがフォームを開くたびに日時を手動で入力する手間を省きたいです。

私はこのコードのスニペットを持っています:

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

しかし、それは機能していません。

助けてくれてありがとう。

8
Mo Boho

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)のようになるため、おそらく好みに合わせて日付をフォーマットする必要があります。日付のフォーマットについては this SO question を参照してください。

18
<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,output

8
Usman

例を参照してください http://jsbin.com/ahehe

ここ で説明されているJavaScript日付フォーマットユーティリティを使用します。

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

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

日付フォーマットを取得する最も速い方法は、 datejs を使用することです。

Libは本当に使いやすく、非常にきれいなフォーマットを提供します。


コードスニペットに関しては、できる限りdocument.writeを使用しないでください。試す

 document.getElementById("date").value = new Date().toUTCString(); 
3
mkoryak
$("#startDate").val($.datepicker.formatDate("dd/mm/yy", new Date()));
$("#endDate").val($.datepicker.formatDate("dd/mm/yy", new Date()));

上記のコードをスクリプトの最後に追加します。 datepickerプラグインには、初期化中にコントロールに日付を設定する機能がないため、これが必要です。

2
Hormis Lona

HTML5の日付を使用している場合

このコードを使用

[〜#〜] html [〜#〜]

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

Javaスクリプト

document.getElementById('start_date').value = Date();
1
kiran lanke

技術用語のすべてを知っているわけではありませんが、答えをどこにも見つけることができなかったので、これを思いついてうまくいきました...幸運を祈ります!

$time = date("Y/m/d h:i:s");

$sql = "INSERT INTO *yourtablenamehere* ('dt')  VALUES ('$time')";
0
user12933494

フォームが送信された後、入力フィールドに含まれる値を保存するように思えます。つまり、スクリプト言語を使用していることになります。ほとんどのスクリプト言語の方が時間/日付のフォーマットオプションが優れているため、JavaScriptの代わりに使用します。 PHPでは、次のようなことができます:

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

これにより、フィールドに「2009年6月16日-8:58」が入力されます。

0
Scott
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();
0
Tony

別のオプションは次のとおりです。

<script language="JavaScript" type="text/javascript"> 
document.getElementById("my_date:box").value = ( Stamp.getDate()+"/"+(Stamp.getMonth() + 1)+"/"+(Stamp.getYear()) );
</script>
0
aguz
<input id="date" name="date" />
<script type="text/javascript">
document.getElementById("date").value = new Date();
</script>
0
jiggy