0
지금 유효성 검사를 수행하려고하는 사용자 지정 날짜 표시기가 있습니다. 구체적으로 말하면, startDate 필드가 endDate 필드보다 먼저 왔는지 확인하려고합니다.Jquery 사용자 지정 DatePicker로 유효성 검사
내 datepicker를 클릭하고 입력 필드를 채울 때 메시지가 나타나기 전에 내 필드를 클릭 한 다음 필드에서 클릭해야합니다. jquery validate가 입력 필드의 change 이벤트가 아니라 keyup 이벤트를 수신하고 있기 때문에 이것이라고 생각합니다.
이
내 코드 (커피로 작성,하지만 난 자바 스크립트 답변을 받아 들일 겁니다) -validateSearchForm:=>
$(@el).find("#searchForm").validate({
rules:{
startDateInputBox:{
dateISO:true,
lessThan: true
},
endDateInputBox:{
dateISO:true
lessThan: true
}
searchPurposeBox:"required"
}
});
보다 적은 -
jQuery.validator.addMethod "lessThan", ((value, element) ->
validDateFormat = /(\d{4})-(\d{2})-(\d{2})/
startDateInput = $("#startTime").val()
endDateInput = $("#endTime").val()
startDateMatch = startDateInput.match(validDateFormat)
endDateMatch = endDateInput.match(validDateFormat)
startDateYear = startDateMatch[1]
startDateMonth = startDateMatch[2]
startDateDay = startDateMatch[3]
endDateYear = endDateMatch[1]
endDateMonth = endDateMatch[2]
endDateDay = endDateMatch[3]
startDate = new Date(startDateYear,startDateMonth,startDateDay)
endDate = new Date(endDateYear,endDateMonth,endDateDay)
if endDate < startDate
return false
return true
), "Start time has to be before end time"
내가 클릭하면 그래서 내가 어떻게해야합니까 내 datepicker에 잘못된 값으로 필드를 채우면 오류 메시지가 즉시 나타납니다? onkeyup 시도했지만 문제가 해결되지 않습니다.
감사
확인과 같은 전화 무언가를 날짜 선택기의으로 onClose 이벤트 (있는 경우, 내가 jQuery를 UI의 날짜 선택기가으로 onClose을 가지고 알고)에 끼어 전에 무엇을했는지 맞춤 [date picker validation]을 원한다면 [this plugin] (https://github.com/elclanrs/jq-idealforms)을 클릭하십시오. – elclanrs