Bootstrap Datepicker (избегать ввода текста или ограничения ручного ввода)

Вот мой сайт: http://splash.inting.org/wp/

В настоящее время я использую Bootstrap Datepicker (ветвь диапазона) для поля "Дата звонка", и это было здорово.

Хотя у меня есть 2 Проблемы:

1) Вы можете вручную ввести строки в поле ввода. Это странно, так как original by eyecon запретил его, введя текущую дату всякий раз, когда вы вводите не-даты. Я попробовал атрибут readonly, и он не работает, потому что он не позволит вам выбрать дату.

2) Я ограничил варианты ввода даты по вторникам и четвергам, изменив ответ в другом сообщении. При загрузке datepicker выбранная по умолчанию дата - это текущая дата, которая может быть в любой другой день недели. Я хочу избежать этого и иметь только по вторникам или четвергам.

Ответ 1

Отменить ключевые события на элементе управления ввода.

<input onkeydown="return false" ... />

Ответ 2

Используйте атрибут readonly и добавьте надстройку после входного элемента для запуска datepicker после ввода:

<input type="text" name="CallDate" value="" id="CallDate" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required input-medium date date-pick" size="40" readonly>
<span class="add-on"><i class="icon-calendar"></i></span>

который должен работать.

Для второй проблемы вы можете использовать измененную версию datepicker отсюда: https://github.com/eternicode/bootstrap-datepicker и используйте опцию daysOfWeekDisabled

Ответ 3

Мне удалось получить приемлемое решение:

$(".date").datetimepicker({
    defaultDate: moment(),
    format: 'YYYY-MM-DD'
}).end().on('keypress paste', function (e) {
    e.preventDefault();
    return false;
});

Надеюсь, что это сработает и для вас!