Проверка диапазона дат jquery Datepicker - PullRequest
1 голос
/ 30 марта 2012

У меня есть поле, похожее на дату рождения.Я использовал jquery datepicker, чтобы показать календарь, чтобы пользователь мог выбрать дату. Теперь у меня есть проблема.

В поле Дата рождения есть вариант выбора, который открывает два поля выбора даты, такие как

Дата рождения - Между --------- --- С ------- И - До ----------

Теперь проблема в том, что пользователь выбирает в поле «Кому» дату, которая меньше, чем «из поля», и нажимает кнопку отправки, которую он получает.Мне нужно запретить отправку и отобразить соответствующее сообщение, чтобы пользователь вводил правильную дату.

Пожалуйста, помогите.

Вот код, который я использую

<input id="borndate"  class="dateISO" onchange="checkDate('borndate');">
</input>

<span id="span_borndate" style="display:none">
<input  id="borndate"  class="dateISO"  onchange="checkDate('borndate');">
</span>

Это Java-скрипт, который я использую

function checkdate(fieldname) {

    var comparator = '#comp_' + fieldName;
    var compVal = $(comparator).val();
    Value = $('#' + fieldName).val();
    var fromDate = jQuery.datepicker.parseDate('mm-dd-yy', Value, null);
    Values = $('#' + fieldName + '-to').val();
    var toDate = jQuery.datepicker.parseDate('mm-dd-yy', Values, null);
    $('#span_' + fieldName).find('.error').remove();
    if (compVal == "Between") {
        if (toDate < fromDate) {
            $('#span_' + fieldName).append("<label class='rangeError' generated='false'>Start date should come before end date</label>");
            return false;
        }
    }
    return true;
}

И эта функция вызывается снова при отправке

function validateforms() {
    var valid = true;
    $('//classnamefor table rows which includes the date td').each(function (index) {
        fieldName = $(this).attr("name");
        if ($('#' + fieldName).hasClass('dateISO')) {
            valid = checkDate(fieldName);
        }
    }
    return valid;
}

1 Ответ

1 голос
/ 30 марта 2012

Попробуйте это

http://jqueryui.com/demos/datepicker/#date-range

и сделать текстовые поля доступными только для чтения = 'true'

<input type="text" id="from" name="from_date" value="" readonly="true"/>
<input type="text" id="to" name="to_date" value="" readonly="true"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...