在javascript中出现“预期未定义为”错误

问题描述 投票:0回答:1

function getAge() {
    var dob = new Date(document.getElementById("dob").value);
    var candyear = dob.getFullYear();
    var today = new Date();
    var curryear = today.getFullYear();
    var x = curryear - candyear;
    if (x <= 0) {
        document.getElementById("showresults").innerHTML = "Wrong date!";
    } else {

        document.getElementById("showresults").innerHTML = "You are " + x + " year(s) old!!";
    }

}
<form>
  <h2>JavaScript Objects</h2><br>
  Enter Your DOB<input id="dob" type="date" name="dob">
  <button type="submit" name="submit" onClick="getAge()">submit</button><br>
  <p id="showresults">
  </p>
</form>

我正在针对一组我不知道的预定义测试用例运行此代码,但遇到错误:

“预期未定义为'错误的日期!'“]
在不同的空闲在线上运行它,似乎工作正常。我只是不知道我的代码出了什么问题。
javascript html
1个回答
0
投票

这行得通吗...?它还可以与<script>标记或包含js文件的链接一起使用。如果您不想重新加载或导航到其他页面而不实际提交表单并使用普通按钮,请当心,否则,该页面将被重置。错误可能来自此。

function getAge() {
    var dob = new Date(document.getElementById("dob").value);
    var candyear = dob.getFullYear();
    var today = new Date();
    var curryear = today.getFullYear();
    var x = curryear - candyear;
    if (x <= 0) {
        document.getElementById("showresults").innerHTML = "Wrong date!!";
    } else {

        document.getElementById("showresults").innerHTML = "You are " + x + " year(s) old!!";
    }

}
<html>

<head>
</head>

<body>
    <form action="" method="POST">
        <h2>JavaScript Objects</h2><br>
        Enter Your DOB: <input id="dob" type="date" name="dob">
        <button type="button" name="submit" onclick="getAge()">submit</button><br>
        <p id="showresults">
        </p>
    </form>
</body>

</html>
© www.soinside.com 2019 - 2024. All rights reserved.