Angularjs 如何区分datetime local类型的部分填充或无效输入与空输入?

Angularjs 如何区分datetime local类型的部分填充或无效输入与空输入?,angularjs,html,input,datetimepicker,html-input,Angularjs,Html,Input,Datetimepicker,Html Input,有没有办法知道用户在datetime本地类型中输入了无效的日期和/或时间,而不是不输入任何内容 我想将无输入视为用户希望重置/删除正在编辑的日期时间的符号 我正在使用来自AngularJS的输入['datetime-local']。您可以检查datetime本地的状态,如下所示: <input id="dte" type="datetime-local"> <script> var myDate = document.getElementById("dte");

有没有办法知道用户在datetime本地类型中输入了无效的日期和/或时间,而不是不输入任何内容

我想将无输入视为用户希望重置/删除正在编辑的日期时间的符号


我正在使用来自AngularJS的输入['datetime-local']。

您可以检查datetime本地的状态,如下所示:

<input id="dte" type="datetime-local">

<script>
    var myDate = document.getElementById("dte");
    myDate.addEventListener("blur", function() {
        console.log("valueMissing : " + myDate.validity.valueMissing);
        console.log("badInput : " + myDate.validity.badInput);
        console.log("valid : " + myDate.validity.valid);
        console.log("value : " + myDate.value);
    });
</script>
您还可以检查其他值,但这些值应符合您提到的要求:

未输入的值:

valid==false&&badInput==false&&valueMissing==false&&value==

输入的值无效:

valid==false&&badInput==true&&valueMissing==false&&value==

输入的有效值:


valid=true&&badInput==false&&valueMissing=false&&value===“无论您输入什么日期”

该问题中答案的可能副本不足。”badInput本身并不能提供您所追求的三种状态。