Как показать дату автоматически через 15 дней в текстовом поле с помощью JavaScript? - PullRequest
0 голосов
/ 11 октября 2018

У меня есть два текстовых поля: одно - дата публикации, второе - дата окончания.Когда пользователь выбирает дату публикации, я хочу показать дату в дате окончания, которая наступает через 15 дней после даты публикации.

Например: если пользователь выбирает октябрь 1 2018 в дату публикации, окт 15 2018 должен автоматическиотображение даты окончания.

 <div class="control-group">
            <label class="control-label">Published Date</label>
            <div class="controls">
            <input type="text" id="published_date" name="published_date" data-date="01-01-2017" data-date-format="yyyy-mm-dd" value="<?php echo date('Y-m-d');?>" class="datepicker span11">
            </div>
          </div>
          <div class="control-group">
            <label class="control-label">Ending Date</label>
            <div class="controls">
            <input type="text" id="ending_date" name="ending_date" disabled>
            </div>
        </div>

Ответы [ 3 ]

0 голосов
/ 11 октября 2018

Вы можете использовать этот фрагмент js, чтобы добавить 15 дней к объекту Date.

let date = new Date(document.getElementById("published_date").value); // making a date object with string
date.setDate(date.getDate() + 15); // setting date 15 days after
document.getElementById("ending_date").value = new_date.toISOString().slice(0, 10); // formatting to yyyy-mm-dd

Поскольку конструктор Date в JS получает ввод со строками произвольной формы, вы можете создать объект Date со строковым значением элемента #published_date.

После создания объекта Date используйте Date.prototype.setDate() и Date.prototype.getDate(), чтобы установить дату через 15 дней после начальной даты,

Наконец, установите значение элемента #ending_date в формате yyyy-mm-dd с помощью Date.prototype.toISOString() и нарезки строк.

Надеюсь, это поможет!

0 голосов
/ 11 октября 2018

используйте этот JavaScript,

 <script>
    var date = new Date(document.getElementById("published_date").value);
   date.setDate(date.getDate() + 15);
   document.getElementById("ending_date").value = date

    </script>
0 голосов
/ 11 октября 2018
var published_date = document.getElementById('published_date').value;
published_date = new Date(published_date);
ending_date = new Date(published_date.getTime() + (1000 * (3600 * 24 * 15)));

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

published_date.getTime() + (1000 * (3600 * 24 * 15)) добавляет 15 дней в миллисекундах.

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...