2017-02-04 4 views
-2

это мой код в EJs файле:Дата в настоящее время + 1 месяц в nodejs

<select class="form-control track-change input-lg" data-track="deadline" name="Deadline" id="Deadline" placeholder="Deadline"> 
    <option value="0" class="task-option project-option default-option" selected="selected" style="display: block;">No deadline</option> 
    <option value="12" class="task-option" >12 Hours</option> 
    <option value="24" class="task-option project-option" style="display: block;">24 Hours</option> 
    <option value="48" class="task-option">2 Days</option> 
    <option value="72" class="task-option project-option" style="display: block;">3 Days</option> 
    <option value="168" class="task-option project-option" style="display: block;">1 Week</option> 
    <option value="336" class="project-option" style="display: none;">2 Weeks</option> 
    <option value="504" class="project-option" style="display: none;">3 Weeks</option> 
    <option value="731" class="project-option" style="display: none;">1 Month</option> 
</select> 

Когда пользователь выбирает 12 часов мне нужно сохранить дату в настоящее время +12 часов в MySQL, а если выбрать 2 дня я необходимо сохранить дату сейчас + 2 дня и т. д.

Как это сделать, используя nodejs или ejs (jade) или javascript? Мне нужен только код даты, а не sql-запрос ... любая помощь, пожалуйста?

+0

Где код, который вы пробовали? – Flimzy

+0

, когда вы видите значение, например, в 12 часов, значение равно 12, когда я сохраняю его в mysql, его возвращение 30-11-2001. Так что я пытаюсь что-нибудь до сих пор ... любая идея? –

+0

Приращение любой части даты практически не изменилось, см. [* Добавить +1 в текущую дату *] (http://stackoverflow.com/questions/9989382/add-1-to-current-date/9989458#9989458). – RobG

ответ

0

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

function deadlineChanged(hours){ 
    let newTime = new Date(new Date().getTime() + (hours * 60 * 60 * 1000)); 
    ///do whatever you want to do with the new time 
} 

, если вы хотите, чтобы преобразовать его в тузд строку, вы можете использовать эту функцию

function formatdate(date) { 
if (date instanceof Date) { 
    var month = date.getMonth() + 1; 
    var day = date.getDate(); 
    var year = date.getFullYear(); 
    return year + "-" + (month >= 10 ? month : "0" + month) + "-" + (day >= 10 ? day : '0' + day); 
} else { 
    return date; 
} 
} 
+0

Vs 'now = new Date(); now.setHours (now.getHours() + moreHours) '. – RobG

+0

Строка sql должна быть датой ??? –

+0

Привет @RobG это быстрее? У меня никогда не было возможности сравнить их обоих. –

Смежные вопросы