闰年用javascript计算

时间:2014-10-06 18:59:54

标签: javascript

嘿伙计们,我已经制作了一些代码来计算闰年,下​​面是我得到的:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Leap Year</title>
<script type="text/javascript">

 function calYear (year) {
    var yr = document.getElementsByName("year");
        if(yr % 400 ==0 || (yr % 100 != 0 && yr % 4 == 0))
        {window.alert("This is not leap!");}
        else{window.alert("This is a leap!");}


}

</script>

</head>

<body>
<form name="yearForm">
<label>
<input type="text" name="year" >
</label>
</form>

</body>

</html>

问题是当我试图在警报中输入一个没有弹出的号码时,任何人都知道为什么会发生这种情况?

1 个答案:

答案 0 :(得分:1)

首先,您需要调用该函数,因此我添加了一个onchange属性。 其次,你需要获得文本输入的实际值,所以我添加了.value。 另外,我使用的是id而不是名字。

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8" />
        <title>Leap Year</title>
        <script type="text/javascript">
            function calYear(year) {
                console.log('calYear');
                var yr = document.getElementById("year").value;
                if(yr % 400 === 0 || (yr % 100 !== 0 && yr % 4 === 0))
                {
                    window.alert("This is not leap!");
                }
                else {
                    window.alert("This is a leap!");
                }
            }
        </script>
    </head>
    <body>
        <form id="yearForm">
            <input type="text" id="year" onchange="calYear()">
        </form>
    </body>
</html>