form di javascript

form di javascript ini adalah bagian dari seri tutorial javascript.

Berikut ini kode bootstrap 5 dan HTML untuk text area form

<div class="card">
    <div class="card-body row">
        <form id="postingForm" method="post">
            <div class="mb-3">
                <textarea class="form-control" rows="3" placeholder="Apa Kabar Dunia Islam Hari Ini?" name="blog" id="blog"></textarea>
            </div>
            <div class="d-flex justify-content-between align-items-center">
                <div>
                    <small class="text-muted">Anda dapat menggunakan MarkDown untuk Menulis</small>
                </div>
                <button type="button" id="uploadButton" class="btn btn-primary"><i class="bi bi-camera"></i></button>
                <button type="submit" class="btn btn-primary">Siarkan</button>
            </div>
        </form>
        <!-- Form upload (awalnya tersembunyi) -->
        <div class="row" id="uploadForm" style="display: none;">
            <form id="uploadImageForm" method="post" enctype="multipart/form-data" class="form-group mt-3">
                <input type="file" name="fileToUpload" id="fileToUpload">
                <input type="submit" value="Upload" class="btn btn-primary">
            </form>
        </div>
    </div>
</div>

Anda dapat mencapai fungsionalitas yang sama dalam JavaScript dengan menggunakan event listener untuk menangani pengiriman formulir dan klik tombol. Berikut kode JavaScript yang setara untuk HTML yang diberikan:

<script>
    // Fungsi untuk menampilkan formulir unggah
    function showUploadForm() {
        document.getElementById("uploadForm").style.display = "block";
    }

    // Pemantau event untuk tombol unggah
    document.getElementById("uploadButton").addEventListener("click", showUploadForm);

    // Pemantau event untuk pengiriman formulir unggahan
    document.getElementById("postingForm").addEventListener("submit", function (event) {
        event.preventDefault(); // Mencegah tindakan pengiriman formulir default

        // Sekarang Anda dapat melakukan tindakan tambahan di sini, seperti mengirimkan data ke server menggunakan fetch atau XMLHttpRequest.
        // Misalnya, Anda dapat menggunakan fetch untuk mengirim data formulir ke "fungsi/posting.php".

        // Gantilah ini dengan endpoint API dan data aktual Anda
        fetch("fungsi/posting.php", {
            method: "POST",
            body: new FormData(document.getElementById("postingForm"))
        })
            .then(response => {
                if (response.ok) {
                    // Tangani respons sukses
                    console.log("Formulir berhasil dikirim");
                    // Anda dapat melakukan tindakan lebih lanjut di sini jika diperlukan
                } else {
                    // Tangani respons error
                    console.error("Pengiriman formulir gagal");
                }
            })
            .catch(error => {
                console.error("Error:", error);
            });
    });

    // Pemantau acara untuk pengiriman formulir unggah gambar
    document.getElementById("uploadImageForm").addEventListener("submit", function (event) {
        // Anda dapat menangani pengiriman formulir unggahan gambar di sini dengan cara yang sama seperti formulir unggahan.
        // Gantilah ini dengan endpoint API aktual untuk pengunggahan gambar.

        // Mencegah tindakan pengiriman formulir default
        event.preventDefault();

        // Gantilah ini dengan endpoint API dan data aktual Anda
        fetch("posting/uploadgambar.php", {
            method: "POST",
            body: new FormData(document.getElementById("uploadImageForm"))
        })
            .then(response => {
                if (response.ok) {
                    // Tangani respons sukses
                    console.log("Gambar berhasil diunggah");
                    // Anda dapat melakukan tindakan lebih lanjut di sini jika diperlukan
                } else {
                    // Tangani respons error
                    console.error("Pengunggahan gambar gagal");
                }
            })
            .catch(error => {
                console.error("Error:", error);
            });
    });
</script>

Kode JavaScript ini menambahkan pemantau acara untuk menangani pengiriman formulir dan klik tombol. Saat formulir unggahan dikirim, itu mencegah tindakan pengiriman formulir default dan mengirimkan data formulir ke endpoint “fungsi/posting.php” menggunakan API fetch. Formulir unggahan gambar ditangani dengan cara yang sama dengan mengirimkan data ke endpoint “posting/uploadgambar.php”.

About Reza Ervani 426 Articles
Adalah pendiri programming.rezaervani.com -

Be the first to comment

Leave a Reply

Your email address will not be published.


*


This site uses Akismet to reduce spam. Learn how your comment data is processed.