PWEB - Kuis PWEB 1

 Putu Ravindra Wiguna

5025201237


Deskripsi Kuis:

Dengan menggunakan html, css, dan javascript buatlah front-end form pendaftaran di atas.


Berikut source codeya pada repository github: RavindraWiguna/kuispweb (github.com)

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Formulir Pendaftaran Pekan Olahraga dan Seni Guru TKA/TPA 2020</title>
    <link rel="stylesheet" href="css/style.css">
</head>
<body>
    <div class="kopformulir">
        <div id="formtitle">Formulir Pendaftaran</div>
        <div  id="eventtitle">Pekan Olahrage dan Seni Guru TKA/TPA</div>
        <div id="eventyear">Tahun 2020</div>
    </div>
    <div class="content">
        <table align="center" cellpadding="10" border="1">
            <tr>
                <td>
                    NAMA PESERTA:
                </td>
                <td>
                    <input type="text" placeholder="Masukkan nama anda" id="data_nama">
                </td>
            </tr>
            <tr>
                <td>
                    TEMPAT LAHIR:
                </td>
                <td>
                    <input type="text" placeholder="Masukkan tempat lahir anda" id="data_tempat_lahir">
                </td>
            </tr>
            <tr>
                <td>
                    TANGGAL LAHIR:
                </td>
                <td>
                    <input type="date" placeholder="" id="data_tgl_lahir">
                </td>
            </tr>
            <tr>
                <td>
                    UTUSAN UNIT TKA/TPA:
                </td>
                <td>
                    <input type="text" placeholder="Masukkan unit" id="data_unit">
                </td>
            </tr>
            <tr>
                <td>
                    KELURAHAN/DESA:
                </td>
                <td>
                    <input type="text" placeholder="Masukkan nama desa/kelurahan" id="data_desa">
                </td>
            </tr>
            <tr>
                <td>
                    KECAMATAN:
                </td>
                <td>
                    <input type="text" placeholder="Masukkan nama kecamatan" id="data_kecamatan">
                </td>
            </tr>
            <tr>
                <td>
                    NOMOR TELEPON:
                </td>
                <td>
                    <input type="text" placeholder="Masukkan no telepon anda" id="data_telp">
                </td>
            </tr>
        </table>
        <div id="jenislombacontainer">
            <div id="jenislombatext">
                JENIS LOMBA:
            </div>
            <table id="jenislombatabel" align="center" cellpadding="2" cellspacing="2">
                <tr>
                    <td>
                        <input type="radio" id="cat1" name="jlomba" value="1">
                        <label for="cat1">Tarik Tambang (4 Perempuan + 1 Laki = 5 orang)</label>
                    </td>
                </tr>
                <tr>
                    <td>
                        <input type="radio" id="cat2" name="jlomba" value="2">
                        <label for="cat2">Lari Estafet (4 Perempuan)</label>
                    </td>
                </tr>
                <tr>
                    <td>
                        <input type="radio" id="cat3" name="jlomba" value="3">
                        <label for="cat3">Gobak Sodor (4 Perempuan)</label>
                    </td>
                </tr>
                <tr>
                    <td>
                        <input type="radio" id="cat4" name="jlomba" value="4">
                        <label for="cat4">Tartil (1 orang perwakilan TKA/TPA)</label>
                    </td>
                </tr>
                <tr>
                    <td>
                        <input type="radio" id="cat5" name="jlomba" value="5">
                        <label for="cat5">Ceramah (1 orang perwakilan TKA/TPA)</label>
                    </td>
                </tr>
            </table>
        </div>
        <div id="tombolsumbit">
            <input type="submit" value="Daftar" onclick="validate()">
        </div>
    </div>
    <div class="tandatangan">
        <div id="imagetandatangan">
            <div id="kepalaunit">
                <div id="namattdkepala">
                    Kepala Unit TKA/TPA
                </div>
                <div class="dotline">
                    ____________
                </div>
                <!-- upload image -->
            </div>
            <div id="pesertalomba">
                <div id="tanggalisi">
                    Surabaya,
                </div>
                <div id="namattdpeserta">
                    Peserta Lomba
                </div>
                <!-- upload image -->
                <div class="dotline">
                    ____________
                </div>
            </div>
        </div>
    </div>
    <script src="js/script.js"></script>
</body>
</html>

style.css

@import url('https://fonts.googleapis.com/css2?family=Kreon:wght@300;400;500;600;700&family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap');


body, html{
    height: 100%;
    margin: 0;
    padding: 0;
    /* font-family: 'Ubuntu', arial; */
    font-family: 'Kreon', arial;
    text-align: center;
    background-color: white;
}

.content{
    display: flex;
    justify-content: center;
    flex-direction: column;
}


#tombolsumbit{
    margin-bottom: 25px;
}


#tanggalisi{
    /* float: right; */
    width: 100%;
    /* margin-bottom: 20px; */
    /* text-align: right; */
    /* padding-right: 50px; */
    /* margin-right: 10px; */
    /* padding-left: 245px; */
}

#imagetandatangan{
    margin-top: 16px;
    display: flex;
}

#kepalaunit{
    margin-top: 20px;
    width: 50%;
}

#pesertalomba{
    width: 50%;
}

input[type=radio]{
    float: left;
}

table#jenislombatabel label{
    float: left;
}

.dotline{
    margin-top: 100px;
}

script.js

function getAge(dateString)
{
    var today = new Date();
    var birthDate = new Date(dateString);
    var age = today.getFullYear() - birthDate.getFullYear();
    var m = today.getMonth() - birthDate.getMonth();
    if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate()))
    {
        age--;
    }
    return age;
}


function checkradiobutton(){
    var c1 = document.getElementById('cat1');
    var c2 = document.getElementById('cat2');
    var c3 = document.getElementById('cat3');
    var c4 = document.getElementById('cat4');
    var c5 = document.getElementById('cat5');

    var checked = -1;
    if(c1.checked){
        checked = 1;
    }
    else if(c2.checked){
        checked = 2;
    }
    else if(c3.checked){
        checked = 3;
    }
    else if(c4.checked){
        checked = 4;
    }
    else if(c5.checked){
        checked = 5;
    }
    // alert(checked);
    return checked;
}

function get_date(){
    var today = new Date();
    var dd = String(today.getDate()).padStart(2, '0');
    var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!
    var yyyy = today.getFullYear();
   
    var databula = [
        "Invalid"
        ,"Januari",
        "Februari",
        "Maret",
        "April",
        "Mei",
        "Juni",
        "Juli",
        "Agustus"
        ,"September"
        ,"Oktober"
        ,"November",
        "Desember"
    ]

    today = dd + ' ' + databula[parseInt(mm)] + ' ' + yyyy;
    return today;
}


function validate(){
    var tanggalisi = document.getElementById("tanggalisi");
    tanggalisi.innerHTML ="Surabaya, " + get_date();
    // alert("clicked");
    var nama = document.getElementById("data_nama").value;
    var tempatLahir = document.getElementById("data_tempat_lahir").value;
    // is astring
    var tanggalLahir = document.getElementById('data_tgl_lahir').value;
    var unit = document.getElementById("data_unit");
    var desa = document.getElementById("data_desa");
    var kecamatan = document.getElementById("data_kecamatan");
    var telp = document.getElementById("data_telp");
    var catlomba = checkradiobutton();

    var letters = /^[A-Za-z]+$/
    var numbers = /^[0-9]+$/
    var alphanum = /^[0-9a-zA-Z]+$/

    if(nama==''
    || tempatLahir == ''
    || tanggalLahir == ''
    || unit == ''
    || desa == ''
    || kecamatan == ''
    ||telp == ''
    || catlomba == -1){
        alert("Isi seluruh form dengan benar terlebih dahulu");
    }

    else if(!letters.test(nama)){
        alert("Nama hanya dapat diisi dengan huruf");
    }
    else if(! letters.test(tempatLahir)){
        alert("Tempat lahir hanya dapat diisi dengan huruf");
    }
    else if(getAge(tanggalLahir) < 18){
        alert("Harus berumur paling tidak 18 tahun");
    }
    else if(! alphanum.test(unit)){
        alert("Unit hanya dapat diisi dengan alphanumerik");
    }
    else if(!letters.test(desa)){
        alert("Desa hanya dapat diisi dengan huruf");
    }
    else if(! letters.test(kecamatan)){
        alert("Kecamatan hanya dapat diisi dengan huruf");
    }
    else if(numbers.test(telp)){
        alert("Nomor telepon hanya dapat diisi dengan angka");
    }

    else{
        alert("Berhasil mendaftar");
    }


    // checkradiobutton();
   
    // var cp = document.getElementById('p2').value;
    // alert(tanggalLahir);
    // console.log(tanggalLahir);
    // alert(typeof(tanggalLahir));
}

var tanggalisi = document.getElementById("tanggalisi");
tanggalisi.innerHTML ="Surabaya, " + get_date();

Berikut link websitenya: Formulir Pendaftaran Pekan Olahraga dan Seni Guru TKA/TPA 2020 (ravindrawiguna.github.io)

Berikit screenshot hasil:



Komentar

Postingan populer dari blog ini

Latihan CRUD - Pendaftaran Siswa Baru

EAS PWEB 2022

Tugas membuat validasi form dengan jQuery