使该DOB计算器起作用的步骤是什么?的JavaScript

时间:2019-01-24 09:50:10

标签: javascript select calculator dob

嘿,我正在做有关如何在JavaScript上制作Dob计算器的作业。顺便说一下,我是一个初学者。此练习是根据3选择来计算年龄,然后我将其显示为alert(),我需要一些人来帮助我在JavaScript上做什么。

我创建了一些变量来获取这些选择的值,但是它没有按我的预期工作。我不知道有什么步骤可以使其正常工作

<form action="#" method="post">
                    <div class="field dob">
                        <label for="dob-day">Day:</label>
                        <select name="dob-day" id="dob-day">
                            <option value="1">1</option>
                            <option value="2">2</option>
                            <option value="3">3</option>
                            <option value="4">4</option>
                            <option value="5">5</option>
                            <option value="6">6</option>
                            <option value="7">7</option>
                            <option value="8">8</option>
                            <option value="9">9</option>
                            <option value="10">10</option>
                            <option value="11">11</option>
                            <option value="12">12</option>
                            <option value="13">13</option>
                            <option value="14">14</option>
                            <option value="15">15</option>
                            <option value="16">16</option>
                            <option value="17">17</option>
                            <option value="18">18</option>
                            <option value="19">19</option>
                            <option value="20">20</option>
                            <option value="21">21</option>
                            <option value="22">22</option>
                            <option value="23">23</option>
                            <option value="24">24</option>
                            <option value="25">25</option>
                            <option value="26">26</option>
                            <option value="27">27</option>
                            <option value="28">28</option>
                            <option value="29">29</option>
                            <option value="30">30</option>
                            <option value="31">31</option>
                        </select>
                    </div>
                    <div class="field dob">
                        <label for="dob-month">Month:</label>
                        <select name="dob-month" id="dob-month">
                            <option value="1">Janvier</option>
                            <option value="2">Février</option>
                            <option value="3">Mars</option>
                            <option value="4">Avrl</option>
                            <option value="5">Mai</option>
                            <option value="6">Juin</option>
                            <option value="7">Juillet</option>
                            <option value="8">Août</option>
                            <option value="9">Septembre</option>
                            <option value="10">Octobre</option>
                            <option value="11">Novembre</option>
                            <option value="12">Décembre</option>
                        </select>
                    </div>
                    <div class="field dob">
                        <label for="dob-year">Year:</label>
                        <select name="dob-year" id="dob-year">
                            <option value="1955">1955</option>
                            <option value="1956">1956</option>
                            <option value="1957">1957</option>
                            <option value="1958">1958</option>
                            <option value="1959">1959</option>
                            <option value="1960">1960</option>
                            <option value="1961">1961</option>
                            <option value="1962">1962</option>
                            <option value="1963">1963</option>
                            <option value="1964">1964</option>
                            <option value="1965">1965</option>
                            <option value="1966">1966</option>
                            <option value="1967">1967</option>
                            <option value="1968">1968</option>
                            <option value="1969">1969</option>
                            <option value="1970">1970</option>
                            <option value="1971">1971</option>
                            <option value="1972">1972</option>
                            <option value="1973">1973</option>
                            <option value="1974">1974</option>
                            <option value="1975">1975</option>
                            <option value="1976">1976</option>
                            <option value="1977">1977</option>
                            <option value="1978">1978</option>
                            <option value="1979">1979</option>
                            <option value="1980">1980</option>
                            <option value="1981">1981</option>
                            <option value="1982">1982</option>
                            <option value="1983">1983</option>
                            <option value="1984">1984</option>
                            <option value="1985">1985</option>
                            <option value="1986">1986</option>
                            <option value="1987">1987</option>
                            <option value="1988">1988</option>
                            <option value="1989">1989</option>
                            <option value="1990">1990</option>
                            <option value="1991">1991</option>
                            <option value="1992">1992</option>
                            <option value="1993">1993</option>
                            <option value="1994">1994</option>
                            <option value="1995">1995</option>
                            <option value="1996">1996</option>
                            <option value="1997">1997</option>
                            <option value="1998">1998</option>
                            <option value="1999">1999</option>
                            <option value="2000">2000</option>
                            <option value="2001">2001</option>
                            <option value="2002">2002</option>
                            <option value="2003">2003</option>
                            <option value="2004">2004</option>
                            <option value="2005">2005</option>
                        </select>
                    </div>
                    <div class="actions">
                        <button type="button" id="run">Run</button>
                    </div>
                </form>

这是我在JavaScript上的代码...

let now = new Date();
let day = document.getElementById("dob-day").value;
let month = document.getElementById("dob-month").value;
let year = document.getElementById("dob-year").value;

(function() {

document.getElementById("run").addEventListener("click", function(){



    })
})();

1 个答案:

答案 0 :(得分:1)

您将不需要iife,并且可以在click函数中获取日,月和年的值。

然后使用 {% for label, messages in app.flashes(['warning', 'error']) %} {% for message in messages %} <div class="alert alert-{{ label }}"> {{ message }} </div> {% endfor %} {% endfor %} 函数将输入转换为日期,并从当前日期中减去并获得天数。

Date
document.getElementById("run").addEventListener("click", function() {
  let now = new Date();
  let day = document.getElementById("dob-day").value;
  let month = document.getElementById("dob-month").value;
  let year = document.getElementById("dob-year").value;
  var timeDiff = Math.abs((new Date(`${month}/${day}/${year}`)).getTime() - now.getTime());
  var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));
  console.log(diffDays)
})