我有一个模态窗口,其表单包含类型为 date 的可选字段,即:
<input id="myDate" type="date" />
如果我选择一个日期,即 14/05/2024,然后删除一些部分(留下日期不完整),即
dd/05/2024
,似乎空白或不完整的日期或错误的格式都会以相同的方式处理,就好像日期为空一样。 (使用 jQuery 的 .val()
在这两种情况下该值都是空的)
有没有一种方法,使用 jQuery,以不同的方式处理空日期和不完整或格式错误的情况?
是的,这是可能的,如果 val 为空,您可以检查
validity.badInput
以检查输入是否完全为空或有输入但其“错误输入”,例如 dd/05/2024
$('#submit').on('click', function(){
$input = $('#date');
if ($input.val() == ""){
if ($input[0].validity.badInput) {
console.log("INPUT NOT EMPTY BUT INVALID!!!")
}
else {
console.log("INPUT COMPLETELY EMPTY")
}
}
else {
console.log("INPUT VALID: " + $input.val() )
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
<input type="date" id="date">
<input type="submit" id="submit">