Javascript 使用自定义日期选择器进行Jquery验证
现在我有一个自定义的日期选择器,我正在尝试进行验证。具体来说,我试图检查startDate字段是否在endDate字段之前 当我点击我的日期选择器并填充我的输入字段时,我需要点击我的字段,然后在消息出现之前离开该字段。我认为这是因为jqueryvalidate正在侦听输入字段中的keyup事件,而不是change事件 这是我的代码(用咖啡编写,但我接受javascript回答)- 少于-Javascript 使用自定义日期选择器进行Jquery验证,javascript,jquery,jquery-validate,coffeescript,Javascript,Jquery,Jquery Validate,Coffeescript,现在我有一个自定义的日期选择器,我正在尝试进行验证。具体来说,我试图检查startDate字段是否在endDate字段之前 当我点击我的日期选择器并填充我的输入字段时,我需要点击我的字段,然后在消息出现之前离开该字段。我认为这是因为jqueryvalidate正在侦听输入字段中的keyup事件,而不是change事件 这是我的代码(用咖啡编写,但我接受javascript回答)- 少于- jQuery.validator.addMethod "lessThan", ((value, elemen
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"
jQuery.validator.addMethod“lessThan”,((值,元素)->
ValidDataFormat=/(\d{4})-(\d{2})-(\d{2})/
startDateInput=$(“#startTime”).val()
endDateInput=$(“#endTime”).val()
startDateMatch=startDateInput.match(validDateFormat)
endDateMatch=endDateInput.match(ValidDataFormat)
startDateYear=startDateMatch[1]
startDateMonth=startDateMatch[2]
startDateDay=startDateMatch[3]
endDateYear=endDateMatch[1]
endDateMonth=endDateMatch[2]
endDateDay=endDateMatch[3]
startDate=新日期(startDateYear、startDateMonth、startDateDay)
endDate=新日期(endDateYear、endDateMonth、endDateDay)
如果endDate
我如何做到当我点击我的日期选择器并用错误的值填充我的字段时,错误消息立即出现?我尝试了onkeyup,但这并不能解决问题
谢谢我之前所做的是挂接到datepicker的onClose事件(如果有,我知道jQuery UI datepicker有onClose),然后调用
$("#searchForm input[name='startDateInputBox']").valid()
如果需要自定义日期选择器验证,请查看。
$("#searchForm input[name='startDateInputBox']").valid()