Проблема с сообщением о подтверждении выбора даты в jQuery - PullRequest
10 голосов
/ 18 февраля 2010

Я использую плагин datequicker jquery в http://plugins.jquery.com/project/datepick с плагином проверки datepicker.

<script id="frmValidation" type="text/javascript">

$(document).ready(function(){
    var validator = $("#frmTest").validate({
        rules:{
            fname: "required",
            dobPicker: "required" 
        },
        messages:{
            fname: "Please enter a name",
            dobPicker: "Select a date"
        },

    });
    $('#dobPicker').datepick();
    $.datepick.setDefaults({showOn: 'both', dateFormat: 'dd-mm-yy', yearRange:'1900:2010'});
});
</script>

И тело документа выглядит следующим образом:

<form id="frmTest" action="" method="post">
<div id="error-list"></div>
<div class="form-row">
<span class="label"><label for="fname">Name</label></span>
<input type="text" name="fname" />
</div>
<div class="form-row">
<span class="label"><label for="dobPicker">DOB</label></span>
<input type="text" id="dobPicker" name="dobPicker" style="margin-left: 4px;"/>
</div>
<div class="form-row">
<input type="submit" name="submit" value="submit"/>
</div>
</form>

Форма проверяется в первый раз, но сообщение об ошибке для средства выбора даты не исчезает сразу после выбора даты. Однако оно исчезает, если дата выбирается во второй раз. Будем благодарны за любую помощь, чтобы сделать это при первом выборе даты

Ответы [ 2 ]

21 голосов
/ 27 марта 2010

Вы хотите установить это в ваших настройках по умолчанию:

onClose: function() {$(this).valid();},

Как только будет выбрана другая дата, плагин валидатора перепроверит поле.

3 голосов
/ 20 апреля 2012

«Лучший ответ» не сработал для меня. Я понял, что валидатор проверяет формат даты, хотя я этого не просил. Вот мое решение:

$('form').validate(
    rules:
    {
        MyDateControl:{
            required:true,
            date:false
        }
    }
);
...