我在JS中添加了验证,该错误为
未捕获的TypeError:contactdate.setCustomValidity不是一个函数。
我的JS代码如下:
function contactDateValidation() {
var contactdate = new Date($('#date1').val()); // or Date.parse(...)
// var contactdate = $("#date1").val();
var dateNow = new Date(); // or Date.now()
if (contactdate < dateNow) {
contactdate.setCustomValidity('Date cannot be less than todays date');
} else {
$("#date1").setCustomValidity("");
}
}
答案 0 :(得分:0)
contactdate.setCustomValidity('Date cannot be less than todays date');
变量contactdate
是一个Date对象,它没有名为setCustomValidity
的函数。您可能打算在$("#date1")
上使用它。
您需要在一个元素上调用它,因此它应该类似于:
$("#date1")[0].setCustomValidity("");
您可以在此处了解有关约束验证的更多信息:https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation
$("#date1")[0].setCustomValidity("Test")
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form>
<input type="text" id="date1">
<input type="submit">
</form>