JS: Muusika

1.Konspekt

1. Javascript

valiMuusikud()
Kontrollib, kas muusikute valikutest on midagi valitud. Kui ei, siis küsib “Palun vali vähemalt üks muusik!”. Kui on valitud, kuvab nimekirja valitud muusikutest.

function valiMuusikud() {

    --
    --saame andmed HTML-ist
    --
    let v1 = document.getElementById("vastus1");
    let muusik1 = document.getElementById("muusik1");
    let muusik2 = document.getElementById("muusik2");
    let muusik3 = document.getElementById("muusik3");
    let muusik4 = document.getElementById("muusik4");

    let valik = "";

    if (muusik1.checked) valik += muusik1.value + ", ";
    if (muusik2.checked) valik += muusik2.value + ", ";
    if (muusik3.checked) valik += muusik3.value + ", ";
    if (muusik4.checked) valik += muusik4.value + ", ";


    --
    --näitab ekraanil:
    --
    if (valik = "") {
        v1.innerText = "Palun vali vähemalt üks muusik!";
    } else {
        v1.innerText = "Valisid: " + valik;
    }
}
Code language: JavaScript (javascript)

valiArvamus()
Kontrollib, kas arvamus on kirjutatud. Kui pole midagi kirjutatud, küsib “Palun kirjuta oma arvamus!”. Kui on kirjutatud, kuvab selle.

function valiArvamus() {
    let v2 = document.getElementById("vastus2"); 
    --
    --Vastuse kuvamise koht
    --
    let arvamus = document.getElementById("arvamus").value; 
   --
   -- Arvamuse sisestus
   --
   -- Kui arvamus on tühi, siis palutakse kirjutada       arvamus

    if (arvamus.trim() = "") {
        v2.innerText = "Palun kirjuta oma arvamus!";
    } 
    else 
    {
     -- Kui arvamus on sisestatud, siis kuvatakse arvamus
        
        v2.innerText = "Sinu arvamus: " + arvamus;
    }
}Code language: JavaScript (javascript)

valiKuulamisaeg()
Kontrollib, mitu tundi inimene päevas muusikat kuulab ja kuvab vastuse.

function valiKuulamisaeg() {
    let v3 = document.getElementById("vastus3");

    --Vastuse kuvamise koht

    let tunnid = document.getElementById("tunnid").value; 

    --Tunnid, kui palju kuulatakse

    -- Kui tunnid on tühi, siis palutakse täita väli

    if (tunnid = "") {
        v3.innerText = "Palun sisesta tunnid!";
    } else {

      -- siis kuvatakse kuulamise aeg

        v3.innerText = "Kuulad muusikat " + tunnid + " tundi päevas";
    }
}Code language: JavaScript (javascript)

valiRaadio()
Kontrollib, kas raadio kuulamine on valitud (jah või ei). Kui midagi pole valitud, küsib “Palun vali raadio kuulamine!”.

function valiRaadio() {
    let v4 = document.getElementById("vastus4"); 

    --Vastuse kuvamise koht

    let jah = document.getElementById("jah");
    let ei = document.getElementById("ei");

    -- Kui "Jah" on valitud, siis kuvatakse vastus "Kuulan raadiot: Jah"
    if (jah.checked) {
        v4.innerText = "Kuulan raadiot: Jah";
    } else if (ei.checked) {

     -- Sama aga on "Ei"
        v4.innerText = "Kuulan raadiot: Ei";
    } else {

     --Kui midagi pole valitud, siis palutakse valida üks variant
        v4.innerText = "Palun vali raadio kuulamine!";
    }
}Code language: JavaScript (javascript)

valiJaamad()
Kontrollib, kas raadiojaamade nimed on sisestatud. Kui ei, küsib “Palun nimeta mõni raadiojaam!”. Kui on, siis kuvab need.

function valiJaamad() {

    let v5 = document.getElementById("vastus5"); // 
    let jaamad = document.getElementById("jaamad").value; 


    -- Kui jaamad on tühjad, siis palutakse nimeta raadiojaam

    if (jaamad = "") {
        v5.innerText = "Palun nimeta mõni raadiojaam!";
    } else {


    -- Kui jaamad on sisestatud, siis kuvatakse need
        v5.innerText = "Raadiojaamad: " + jaamad;
    }
}Code language: JavaScript (javascript)

valiStiil()
Kontrollib, kas muusika stiil on valitud. Kui ei, küsib “Palun vali muusika stiil!”. Kui on, siis kuvab valitud stiili.

function valiStiil() {
    let v6 = document.getElementById("vastus6"); 
    let stiil = document.getElementById("stiil").value;

-- Kui stiil ei ole valitud, siis palutakse valida stiil

    if (stiil = "") {
        v6.innerText = "Palun vali muusika stiil!";
    } else {


     -- Kui stiil on valitud, siis kuvatakse valitud stiil

        v6.innerText = "Valisid stiili: " + stiil;
    }
}Code language: JavaScript (javascript)

kokkuvott()
Kogub kõik vastused ja kuvab need ühe kokkuvõttena.

function kokkuvott() {
    let v1 = document.getElementById("vastus1").innerText; -- Muusikute valik
    let v2 = document.getElementById("vastus2").innerText; -- Arvamus
    let v3 = document.getElementById("vastus3").innerText; -- Kuulamise aeg
    let v4 = document.getElementById("vastus4").innerText; -- Raadio kuulamine
    let v5 = document.getElementById("vastus5").innerText; -- Raadiojaamad
    let v6 = document.getElementById("vastus6").innerText; -- Muusika stiil

    let vastused = document.getElementById("vastused"); 
-- Koht, kus kõik vastused kuvatakse

-- Kuvab kõik vastused üheks lõplikuks kokkuvõtteks

    vastused.innerHTML =
        v1 + "<br>" +
        v2 + "<br>" +
        v3 + "<br>" +
        v4 + "<br>" +
        v5 + "<br>" +
        v6 + "<br><hr>";
}Code language: JavaScript (javascript)

puhasta() Funktsioon, mis kuvab kõiki valitud vastuseid kokku

function puhasta() {

    --Kõik vastused 
    let v1 = document.getElementById("vastus1"); 
    let v2 = document.getElementById("vastus2"); 
    let v3 = document.getElementById("vastus3"); 
    let v4 = document.getElementById("vastus4"); 
    let v5 = document.getElementById("vastus5");
    let v6 = document.getElementById("vastus6"); 

    let muusik1 = document.getElementById("muusik1"); 
    let muusik2 = document.getElementById("muusik2"); 
    let muusik3 = document.getElementById("muusik3"); 
    let arvamus = document.getElementById("arvamus"); 
    let tunnid = document.getElementById("tunnid");
    let jah = document.getElementById("jah"); 
    let ei = document.getElementById("ei"); 
    let jaamad = document.getElementById("jaamad");
    let stiil = document.getElementById("stiil");

    let vastused = document.getElementById("vastused"); 

    --Puhastab kõik vastused
    v1.innerText = "";
    v2.innerText = "";
    v3.innerText = "";
    v4.innerText = "";
    v5.innerText = "";
    v6.innerText = "";

    -- Läheb kõik checkboxid ja valikud tagasi algseisundisse
    muusik1.checked = false;
    muusik2.checked = false;
    muusik3.checked = false;
    arvamus.value = "";
    tunnid.value = "";
    jah.checked = false;
    ei.checked = false;
    jaamad.value = "";
    stiil.selectedIndex = 0;
    vastused.innerText = "";
}Code language: JavaScript (javascript)

2.HTML

Vorm on jagatud väljadeks tabelis (<table>), iga küsimus on eraldi tr sees.

Esimeses osas on mitu checkbox tüüpi valikut muusikute kohta, igaüks kutsub välja funktsiooni valiMuusikud().

<!-- 1. Muusikud/ansambid valiku küsimus -->
            <tr>
                <td>
                    Milliseid muusikuid/ansambleid sa tead?<br>
                    <!-- Checkbox valikud muusikute kohta -->
                    <input type="checkbox" id="muusik1" name="muusik" value="AC/DC" onchange="valiMuusikud()">
                    <label for="muusik1">AC/DC</label><br>
                    <input type="checkbox" id="muusik2" name="muusik" value="Metallica" onchange="valiMuusikud()">
                    <label for="muusik2">Metallica</label><br>
                    <input type="checkbox" id="muusik3" name="muusik" value="5MIINUST" onchange="valiMuusikud()">
                    <label for="muusik3">5MIINUST</label><br>
                    <input type="checkbox" id="muusik4" name="muusik" value="Smilers" onchange="valiMuusikud()">
                    <label for="muusik4">Smilers</label>
                </td>
                <!-- Div, kuhu kuvatakse valiku vastus -->
                <td><div id="vastus1"></div></td>
            </tr>

Code language: HTML, XML (xml)

Tekstiala (textarea) arvamuse jaoks, mille sisendi muutmisel käivitub valiArvamus().


            <!-- 2. Arvamus küsimus -->
            <tr>
                <td>
                    <label for="arvamus">Mida arvad muusika kuulamisest koolis?</label><br>
                    <!-- Tekstiala arvamuse sisestamiseks -->
                    <textarea id="arvamus" rows="4" cols="30" oninput="valiArvamus()"></textarea>
                </td>
                <!-- Div, kuhu kuvatakse vastus -->
                <td><div id="vastus2"></div></td>
            </tr>
Code language: HTML, XML (xml)

Numbriväli kuulamisaja jaoks, mille väärtuse muutmisel käivitub valiKuulamisaeg().


            <!-- 3. Kuulamisaeg küsimus -->
            <tr>
                <td>
                    <label for="tunnid">Mitu tundi päevas sa kuulad muusikat?</label><br>
                    <!-- Numbriväli, kus saab sisestada kuulamisaega -->
                    <input type="number" id="tunnid" min="0" max="24" onchange="valiKuulamisaeg()">
                </td>
                <!-- Div, kuhu kuvatakse vastus -->
                <td><div id="vastus3"></div></td>
            </tr>
Code language: HTML, XML (xml)

Raadio kuulamise kohta on kaks radio nuppu, mis kutsuvad valiRaadio().


            <!-- 4. Kas kuulad raadiot küsimus -->
            <tr>
                <td>
                    Kas sa kuulad raadiot?<br>
                    <!-- Raadio nuppude valikud: Jah ja Ei -->
                    <input type="radio" id="jah" name="raadio" value="Jah" onchange="valiRaadio()">
                    <label for="jah">Jah</label>
                    <input type="radio" id="ei" name="raadio" value="Ei" onchange="valiRaadio()">
                    <label for="ei">Ei</label>
                </td>
                <!-- Div, kuhu kuvatakse vastus -->
                <td><div id="vastus4"></div></td>
            </tr>
Code language: HTML, XML (xml)

Tekstisisendi väli raadiojaamade nimetamiseks, millel on oninput sündmus ja funktsioon valiJaamad().


            <!-- 5. Raadiojaamad küsimus -->
            <tr>
                <td>
                    <label for="jaamad">Milliseid raadiojaamu oskad nimetada?</label><br>
                    <!-- Tekstiväli raadiojaamade nimetamiseks -->
                    <input type="text" id="jaamad" placeholder="Sky Plus, Elmar..." oninput="valiJaamad()">
                </td>
                <!-- Div, kuhu kuvatakse vastus -->
                <td><div id="vastus5"></div></td>
            </tr>Code language: HTML, XML (xml)

Rippmenüü muusika stiili valimiseks, kus muutmisel kutsutakse valiStiil().


            <!-- 6. Muusika stiilide valiku küsimus -->
            <tr>
                <td>
                    <label for="stiil">Millist muusikat sa kõige rohkem kuulad?</label><br>
                    <!-- Rippmenüü stiili valimiseks -->
                    <select id="stiil" onchange="valiStiil()">
                        <option value="">Vali stiil</option>
                        <option value="Pop">Pop</option>
                        <option value="Rock">Rock</option>
                        <option value="Hip-Hop">Hip-Hop</option>
                        <option value="Jazz">Jazz</option>
                        <option value="Klassikaline">Klassikaline</option>
                        <option value="Elektrooniline">Elektrooniline</option>
                    </select>
                </td>
                <!-- Div, kuhu kuvatakse vastus -->
                <td><div id="vastus6"></div></td>
            </tr>
Code language: HTML, XML (xml)

–Nuppud


            <!-- Nuppude rida: saata ja puhastada vorm -->
            <tr>
                <td colspan="2">
                    <!-- Nupp vormi saatmiseks -->
                    <input type="button" value="Saada" onclick="kokkuvott()">
                    <!-- Nupp vormi tühjendamiseks -->
                    <input type="button" value="Puhasta" onclick="puhasta()">
                </td>
            </tr>Code language: HTML, XML (xml)

Lõpus on eraldi plokk vastuste kuvamiseks (vastused ja kokkuvote).

<!-- Div, kuhu kuvatakse kogu kokkuvõtte -->
    <div id="kokkuvote"></div>
</fieldset>

<fieldset>
    <legend><h1>Vastused</h1></legend>
    <form>
        <!-- Div, kuhu kuvatakse kõik vastused -->
        <div id="vastused"></div>
    </form>
</fieldset>
Code language: HTML, XML (xml)

2. html/css/js kõik koodi

Muusika küsitlus

Milliseid muusikuid/ansambleid sa tead?





Kas sa kuulad raadiot?


Vali stiil Pop Rock Hip-Hop Jazz Klassikaline Elektrooniline

Vastused

function valiMuusikud() { let v1 = document.getElementById(“vastus1”); let muusik1 = document.getElementById(“muusik1”); let muusik2 = document.getElementById(“muusik2”); let muusik3 = document.getElementById(“muusik3”); let muusik4 = document.getElementById(“muusik4”); let valik = “”; if (muusik1.checked) valik += muusik1.value + “, “; if (muusik2.checked) valik += muusik2.value + “, “; if (muusik3.checked) valik += muusik3.value + “, “; if (muusik4.checked) valik += muusik4.value + “, “; if (valik = “”) { v1.innerText = “Palun vali vähemalt üks muusik!”; } else { v1.innerText = “Valisid: ” + valik; } } function valiArvamus() { let v2 = document.getElementById(“vastus2”); let arvamus = document.getElementById(“arvamus”).value; if (arvamus.trim() = “”) { v2.innerText = “Palun kirjuta oma arvamus!”; } else { v2.innerText = “Sinu arvamus: ” + arvamus; } } function valiKuulamisaeg() { let v3 = document.getElementById(“vastus3”); let tunnid = document.getElementById(“tunnid”).value; if (tunnid = “”) { v3.innerText = “Palun sisesta tunnid!”; } else { v3.innerText = “Kuulad muusikat ” + tunnid + ” tundi päevas”; } } function valiRaadio() { let v4 = document.getElementById(“vastus4”); let jah = document.getElementById(“jah”); let ei = document.getElementById(“ei”); if (jah.checked) { v4.innerText = “Kuulan raadiot: Jah”; } else if (ei.checked) { v4.innerText = “Kuulan raadiot: Ei”; } else { v4.innerText = “Palun vali raadio kuulamine!”; } } function valiJaamad() { let v5 = document.getElementById(“vastus5”); let jaamad = document.getElementById(“jaamad”).value; if (jaamad = “”) { v5.innerText = “Palun nimeta mõni raadiojaam!”; } else { v5.innerText = “Raadiojaamad: ” + jaamad; } } function valiStiil() { let v6 = document.getElementById(“vastus6”); let stiil = document.getElementById(“stiil”).value; if (stiil = “”) { v6.innerText = “Palun vali muusika stiil!”; } else { v6.innerText = “Valisid stiili: ” + stiil; } } function kokkuvott() { let v1 = document.getElementById(“vastus1”).innerText; let v2 = document.getElementById(“vastus2”).innerText; let v3 = document.getElementById(“vastus3”).innerText; let v4 = document.getElementById(“vastus4”).innerText; let v5 = document.getElementById(“vastus5”).innerText; let v6 = document.getElementById(“vastus6”).innerText; let vastused = document.getElementById(“vastused”); vastused.innerHTML = v1 + “
” + v2 + “
” + v3 + “
” + v4 + “
” + v5 + “
” + v6 + “

“; } function puhasta() { let v1 = document.getElementById(“vastus1”); let v2 = document.getElementById(“vastus2”); let v3 = document.getElementById(“vastus3”); let v4 = document.getElementById(“vastus4”); let v5 = document.getElementById(“vastus5”); let v6 = document.getElementById(“vastus6”); let muusik1 = document.getElementById(“muusik1”); let muusik2 = document.getElementById(“muusik2”); let muusik3 = document.getElementById(“muusik3”); let arvamus = document.getElementById(“arvamus”); let tunnid = document.getElementById(“tunnid”); let jah = document.getElementById(“jah”); let ei = document.getElementById(“ei”); let jaamad = document.getElementById(“jaamad”); let stiil = document.getElementById(“stiil”); let vastused = document.getElementById(“vastused”); v1.innerText = “”; v2.innerText = “”; v3.innerText = “”; v4.innerText = “”; v5.innerText = “”; v6.innerText = “”; muusik1.checked = false; muusik2.checked = false; muusik3.checked = false; muusik4.checked = false; arvamus.value = “”; tunnid.value = “”; jah.checked = false; ei.checked = false; jaamad.value = “”; stiil.selectedIndex = 0; vastused.innerText = “”; } body { font-family: Arial, sans-serif; background-color: lightsteelblue; margin: 20px; } fieldset { background: white; padding: 20px; border-radius: 8px; border: 2px solid grey; } #table1 td:nth-child(2) { width: 40%; min-width: 250px; } table { width: 100%; } td { padding: 10px; vertical-align: top; } input[type=”text”], input[type=”number”], select, textarea { width: 100%; padding: 5px; border-radius: 4px; border: 1px solid #aaa; } input[type=”button”] { margin-right: 10px; padding: 8px 16px; background-color: #778899; color: white; border: none; }