2016-09-27 6 views
0

私はJavaScriptの初心者です。情報が最後に更新された時を知るためにユーザーが提出すると今日の日付の値を送る必要があるフォームに取り組んでいます。隠し入力に値を設定

現在、次のコードはありますが、フィールドの日付は更新されていないようです。理由を理解するのを助けてくれますか?

<script type="text/javascript"> 
 

 
    var datetoday = new Date(); 
 
    var months = new makeArray('Jan','Feb','Mar','Apr','May','June','July','Aug','Sept','Oct','Nov','Dec'); 
 
    var day = datetoday.getDate(); 
 
    var month = datetoday.getMonth() + 1; 
 
    var yyyy = datetoday.getFullYear(); 
 
    var my_date = day+"-"+months[month]+"-"+yyyy; 
 

 
    document.getElementById("DATE_TODAY").value = my_date; 
 
</script>
<form method="POST"> 
 
    * First Name: 
 
    <input name="FNAME" type="text" /> 
 
    <br> 
 
    * Last Name: 
 
    <input name="LNAME" type="text" /> 
 
    <br> 
 
    * Street Address: 
 
    <input name="ADDRESS" type="text" /> 
 
    <input type="hidden" name="DATE_TODAY" id="DATE_TODAY" /> 
 
</form>

+0

これはプリファレンスセンターとして設定されています。つまり、ユーザーはいつでもフォームに戻り、情報を提出してください。 これは、更新が行われた日付でデータベースを更新するには、submitで値を渡す必要があることを意味します。それが理にかなってほしい! – SkapaDesign

+0

フォームを表示して、あなたに質問があるコードを含めてください – baao

+0

コードが含まれています、それが明らかになったら教えてください! – SkapaDesign

答えて

1

makeArrayは()ので、それはあなたを投げているインスタンス、メソッドではなくオブジェクトでありますエラー(api.jquery.com/jQuery.makeArray参照)。

ただ、このようなあなたの配列を作成し、あなたがそれやりたいようだ:あなたのスニペットはスロー

var months = ['Jan','Feb','Mar','Apr','May','June','July','Aug','Sept','Oct','Nov','Dec'];

0

あなたはこのような何か行うことができます。

var m_names = new Array("Jan", "Feb", "Mar", 
 
    "Apr", "May", "Jun", "Jul", "Aug", "Sep", 
 
    "Oct", "Nov", "Dec"); 
 

 
var d = new Date(); 
 
var curr_date = d.getDate(); 
 
var curr_month = d.getMonth(); 
 
var curr_year = d.getFullYear(); 
 
var my_date = (curr_date + "-" + m_names[curr_month] + "-" + curr_year); 
 

 
document.getElementById("DATE_TODAY").value = my_date;
<input type="text" name="DATE_TODAY" id="DATE_TODAY" />

0

:あなたが使用することができます

Uncaught ReferenceError: makeArray is not defined

を:

var months = ['Jan','Feb','Mar','Apr','May','June','July','Aug','Sept','Oct','Nov','Dec']; 
関連する問題