Нет вывода предупреждений после ввода пользователем - PullRequest
1 голос
/ 09 июля 2020

Я пытаюсь получить информацию о рождении пользователя и придумать для него имя в соответствии с его днем ​​рождения после того, как он нажмет кнопку подтверждения. Программа также проверяет, ввел ли пользователь действительную дату и месяц, но я Я не получаю никакого вывода после заполнения входных данных.

Вот мой Html код

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" type="text/css" href="CSS/bootstrap.css" media="screen" />
    <link rel="stylesheet" type="text/css" href="CS S/styles.css" media="screen" />
    <title>Akan names</title>
</head>

<body>
    <div class="container">
        <div class="jumbotron">

            <h1>Akan Name</h1>

            <div class="card">
                <div class="card-body">
                    <label for="usr">Date</label>
                    <input type="text" class="form-control" id="date">
                </div>

                <div class="card">
                    <div class="card-body">

                        <label for="usr">Month</label>
                        <input type="text" class="form-control" id="month">
                    </div>

                    <div class="card">
                        <div class="card-body">
                            <label for="usr">Year</label>
                            <input type="text" class="form-control" id="year">
                        </div>

                        <div class="card">
                            <div class="card-body">
                                <label for="usr">Gender</label>
                                <input type="text" class="form-control" id="gender">
                            </div>

                            <div class="card">
                                <div class="card-body">
                                    <button onclick="calc()" id="btnConfirm" type="button">Check</button>
                                </div>
                            </div>
                            <script src = "JS/script.js"></script>

</body>

</html>

Вот мой Js код:

var date;
var month;
var year;
var gender;
var name;

function validate() {
    date = document.getElementById('date').value;
    month = document.getElementById('month').value;
    year = document.getElementById('year').value;
    gender = document.getElementById('gender').value;

    if (date <= 0 || date > 31) {
        alert("Enter a valid date");
    };

    if (month <= 0 || month > 12) {
        alert("Enter a valid month");
    };

}

function calc() {

    validate();
    date = document.getElementById('date').value;
    month = document.getElementById('month').value;
    year = document.getElementById('year').value;
    gender = document.getElementById('gender').value;

    var cc = year.charAt(0) + year.charAt(1);
    var yy = year.charAt(2) + year.charAt(3);

    var day = (((cc / 4) - 2 * cc - 1) + ((5 * yy / 4)) + ((26 * (month + 1) / 10)) + date) % 7;

    if (day == 1 && gender == "male") {
        alert("Sunday : Kwasi");
    } else if (day == 2 && gender == "male") {
        alert("Monday : Kwadwo");
    } else if (day == 3 && gender == "male") {
        alert("Tuesday : Kwabena");
    } else if (day == 4 && gender == "male") {
        alert("Wednesday :  Kwaku");
    } else if (day == 5 && gender == "male") {
        alert("Thursday : Yaw");
    } else if (day == 6 && gender == "male") {
        alert("Friday : Kofi");
    } else if (day == 7 && gender == "male") {
        alert("Saturday : Kwame");
    } else if (day == 1 && gender == "female") {
        alert("Sunday : Akosua");
    } else if (day == 2 && gender == "female") {
        alert("Monday : Adwoa");
    } else if (day == 3 && gender == "female") {
        alert("Tuesday : Abenaa");
    } else if (day == 4 && gender == "female") {
        alert("Wednesday :  Akua");
    } else if (day == 5 && gender == "female") {
        alert("Thursday : Yaa");
    } else if (day == 6 && gender == "female") {
        alert("Friday : Afua");
    } else if (day == 7 && gender == "female") {
        alert("Saturday : Ama");
    };

}

1 Ответ

0 голосов
/ 09 июля 2020

Это потому, что значение day не круглое, поэтому оно не соответствует ни одному из перечисленных вами значений. Вы можете обнаружить это с помощью простого console.log(day). Используйте Math.floor():

var date;
var month;
var year;
var gender;
var name;

function validate() {
    date = document.getElementById('date').value;
    month = document.getElementById('month').value;
    year = document.getElementById('year').value;
    gender = document.getElementById('gender').value;

    if (date <= 0 || date > 31) {
        alert("Enter a valid date");
    };

    if (month <= 0 || month > 12) {
        alert("Enter a valid month");
    };

}

function calc() {

    validate();
    date = document.getElementById('date').value;
    month = document.getElementById('month').value;
    year = document.getElementById('year').value;
    gender = document.getElementById('gender').value;

    var cc = year.charAt(0) + year.charAt(1);
    var yy = year.charAt(2) + year.charAt(3);

    var day = Math.floor(((((cc / 4) - 2 * cc - 1) + ((5 * yy / 4)) + ((26 * (month + 1) / 10)) + date)) % 7);
    
    console.log(day);

    if (day == 1 && gender == "male") {
        alert("Sunday : Kwasi");
    } else if (day == 2 && gender == "male") {
        alert("Monday : Kwadwo");
    } else if (day == 3 && gender == "male") {
        alert("Tuesday : Kwabena");
    } else if (day == 4 && gender == "male") {
        alert("Wednesday :  Kwaku");
    } else if (day == 5 && gender == "male") {
        alert("Thursday : Yaw");
    } else if (day == 6 && gender == "male") {
        alert("Friday : Kofi");
    } else if (day == 7 && gender == "male") {
        alert("Saturday : Kwame");
    } else if (day == 1 && gender == "female") {
        alert("Sunday : Akosua");
    } else if (day == 2 && gender == "female") {
        alert("Monday : Adwoa");
    } else if (day == 3 && gender == "female") {
        alert("Tuesday : Abenaa");
    } else if (day == 4 && gender == "female") {
        alert("Wednesday :  Akua");
    } else if (day == 5 && gender == "female") {
        alert("Thursday : Yaa");
    } else if (day == 6 && gender == "female") {
        alert("Friday : Afua");
    } else if (day == 7 && gender == "female") {
        alert("Saturday : Ama");
    };

}
<body>
    <div class="container">
        <div class="jumbotron">

            <h1>Akan Name</h1>

            <div class="card">
                <div class="card-body">
                    <label for="usr">Date</label>
                    <input type="text" class="form-control" id="date">
                </div>

                <div class="card">
                    <div class="card-body">

                        <label for="usr">Month</label>
                        <input type="text" class="form-control" id="month">
                    </div>

                    <div class="card">
                        <div class="card-body">
                            <label for="usr">Year</label>
                            <input type="text" class="form-control" id="year">
                        </div>

                        <div class="card">
                            <div class="card-body">
                                <label for="usr">Gender</label>
                                <input type="text" class="form-control" id="gender">
                            </div>

                            <div class="card">
                                <div class="card-body">
                                    <button onclick="calc()" id="btnConfirm" type="button">Check</button>
                                </div>
                            </div>


</body>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...