Изменение даты при вводе даты

У меня есть поля. Одним из них является ValidFrom Date, а другим - ValidTo Date.

Мой вопрос заключается в том, что мне делать, чтобы, если дата ValidFrom вводится с использованием DateTimePicker, как мне автоматически изменить ValidTo точно на 30 дней?

Ниже приведен мой код для DateTimePicker:

<script src="~/Scripts/jquery.datetimepicker.js"></script>
<script>
    $(document).ready(function () {
        $('#ValidFrom').datetimepicker({
            datepicker: true,
            timepicker: false,
            format: 'm/d/Y',
            step: 30,
            minDate: new Date(),
            onChangeDateTime: function (dp, $input) {
                var date = new Date($input.val());
                date.setMonth(date.getMonth() + 1);
                $('#ValidTo').datetimepicker({
                    datepicker: true,
                    timepicker: false,
                    format: 'm/d/Y',
                    step: 30,
                    minDate: date,
                });
            },

        });

    });
</script>

Я должен изменить дату ValidTo на 30 дней, как и при вводе даты ValidFrom.

2 ответа

Решение

Вот как должен выглядеть код: после нескольких попыток с ним покончено

<script>
    $(document).ready(function () {
        $('#ValidFrom').datetimepicker({
            datepicker: true,
            timepicker: false,
            format: 'm/d/Y',
            step: 30,
            minDate: new Date(),
            onChangeDateTime: function (dp, $input) {
                var date = new Date($input.val());
                date.setMonth(date.getMonth() + 1);
                date = (date.getMonth() + 1) + '/' + date.getDate() + '/' + date.getFullYear();
                $('#ValidTo').val(date);
            },

        });
        $('#ValidTo').datetimepicker({
            datepicker: true,
            timepicker: false,
            format: 'm/d/Y',
            step: 30,
            minDate: new Date()
        });
    });

</script>

То, что вы ищете, находится под setDate() метод datetimepicker JS, он может принимать параметр как setDate(new Date()), Вы можете указать свою собственную дату (формат по необходимости) в качестве аргумента. Если вы не хотите, чтобы другая дата была выбрана до вашего 30-дневного лимита, вы можете проверить start или же startDate параметры в том же JS.

Я предлагаю вам прочитать datetimepicker.js, который вы используете в настоящее время, чтобы узнать обо всех его функциях и параметрах.

Другие вопросы по тегам