2

제 애플리케이션에서 jquery datepicker는 물론 레일 클라이언트 측 유효성 검사도 구현했습니다. 그러나 날짜를 선택한 후에도 "공백이 될 수 없습니다"라는 오류 메시지가 나타나고 양식이 제출되지 않습니다. 날짜를 선택한 후 유효성 검사를 통과시키는 방법은 무엇입니까?레일 jquery datepicker를 선택한 후에도 클라이언트 측 유효성 검사가 true가되지 않음

아래의 datepicker에 대한 코드를 찾으십시오.

jQuery(document).ready(function($){ 
$('#project_start_date').datepicker({ dateFormat: "yy-mm-dd",onSelect: function(selected) { 

$("#project_end_date").datepicker("option","minDate", selected) 

} 
}); 

답변

0

주요 문제는 Client Side Validations wiki에 설명한 바와 같이, datapicker가

$('#project_start_date').datepicker({ dateFormat: "yy-mm-dd",onSelect: function(selected) { 

$("#project_end_date").datepicker("option","minDate", selected) 

}, onClose: function(){ 
     //workaround to trigger javascript validation 
     $(this).focusout(); 
} 
}); 
1

을 닫은 후 수동으로 해결 방법으로는 포커스 이벤트를 트리거 할 수 있습니다 ... 초점 밖으로 때 유효성 검사가 트리거 될 것입니다 , 당신은 클라이언트 측하는 검증와 jQueryUI DatePicker에서 호환되도록하려면이 옵션을 추가 할 수 있습니다

onClose: function(dateText, inst) { $(inst.input).change().focusout(); } 

당신의 예에서 :

$('#project_start_date').datepicker({ 
    dateFormat: "yy-mm-dd", 
    onSelect: function(selected) { $("#project_end_date").datepicker("option","minDate", selected) }, 
    onClose: function(dateText, inst) { $(inst.input).change().focusout(); } 
})