2016-09-27 2 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'];