Saya bisa membuat tidak menyerahkan formulir?

I've punya bentuk, dengan 2 tombol

<a href="index.html"><button>Cancel changes</button></a>

<button type="submit">Submit</button>

Saya menggunakan jQuery UI's tombol pada mereka juga, hanya seperti ini

$('button').button();

Namun, tombol pertama juga menyerahkan formulir. Saya akan berpikir bahwa jika itu didn't memiliki type="kirim", itu tidak't.

Jelas saya bisa melakukan ini

$('button[type!=submit]').click(function(event) { event.stopPropagation(); });

Tapi apakah ada cara saya bisa berhenti tombol kembali dari mengirimkan formulir tanpa JavaScript intervensi?

Jujur saja, saya menggunakan tombol hanya agar aku bisa gaya ini dengan jQuery UI. Aku mencoba menelepon tombol() pada link dan tidak't bekerja seperti yang diharapkan (terlihat cukup jelek!).

Mengomentari pertanyaan (2)
Larutan

Nilai default untuk type atribut tombol elemen adalah "kirim". Set ke type="tombol" untuk menghasilkan sebuah tombol yang doesn't menyerahkan formulir.

Submit

Dalam kata-kata Standar HTML: "Tidak apa-apa."

Komentar (5)

The tombol elemen memiliki default tipe submit.

Anda dapat membuatnya melakukan apa-apa dengan menetapkan jenis tombol:

Cancel changes
Komentar (2)

Gunakan saja baik tua HTML:

<input type="button" value="Submit" />

Bungkus sebagai subjek dari suatu link, jika anda inginkan:

<a href="http://somewhere.com"><input type="button" value="Submit" /></a>

Atau jika anda memutuskan anda ingin javascript untuk menyediakan beberapa fungsi lainnya:

<input type="button" value="Cancel" onclick="javascript: someFunctionThatCouldIncludeRedirect();"/>
Komentar (12)

Jujur, saya suka jawaban yang lain. Mudah dan tidak perlu masuk ke JS. Tapi saya melihat bahwa anda bertanya tentang jQuery. Jadi demi kelengkapan, jQuery jika anda kembali palsu dengan .klik() handler, ini akan meniadakan tindakan default widget.

Lihat di sini untuk contoh (dan lebih banyak barang, juga). Di sini's dokumentasi, terlalu.

singkatnya, dengan kode sampel, lakukan ini:

<script type="text/javascript">
    $('button[type!=submit]').click(function(){
        // code to cancel changes
        return false;
    });
</script>

<a href="index.html">Cancel changes</a>
Submit

Sebagai manfaat tambahan, dengan ini, anda dapat menyingkirkan tag anchor dan hanya menggunakan tombol.

Komentar (1)

Tanpa pengaturan atribut type, anda juga bisa kembali palsu dari OnClick handler, dan menyatakan onclick atribut sebagai onclick="kembali onBtnClick(event)".

Komentar (0)

Ya, anda dapat membuat tombol tidak menyerahkan formulir dengan menambahkan atribut dari jenis nilai tombol: <button type="tombol"><tombol>

Komentar (0)

        <div class="control-group">

            <input type="text" name="subject_code" id="inputEmail" placeholder="Subject Code">
        </div>
        <div class="control-group">
            <input type="text" class="span8" name="title" id="inputPassword" placeholder="Subject Title" required>
        </div>
        <div class="control-group">
            <input type="text" class="span1" name="unit" id="inputPassword" required>
        </div>
            <div class="control-group">
            Semester
            <div class="controls">
                <select name="semester">

                    1st
                    2nd
                 0){ ?>
        <script>
        alert('Data Sudah Ada');
        </script>
        <?php
        }else{
        mysql_query("insert into subject (subject_code,subject_title,description,unit,semester) values('$subject_code','$title','$description','$unit','$semester')")or die(mysql_error());

        mysql_query("insert into activity_log (date,username,action) values(NOW(),'$user_username','Add Subject $subject_code')")or die(mysql_error());

        ?>
        <script>
        window.location = "subjects.php";
        </script>
        <?php
        }
        }

        ?>
Komentar (0)