Saya ingin mengirimkan formulir. Tetapi saya tidak akan menggunakan cara dasar menggunakan tombol input dengan tipe kirim tetapi sebuah tautan.
Gambar di bawah ini menunjukkan alasannya. Saya menggunakan tautan gambar untuk menyimpan / mengirim formulir. Karena saya memiliki standar css markup untuk tautan gambar, saya tidak ingin menggunakan tombol masukan kirim.
Saya mencoba menerapkan onClick = "document.formName.submit ()" ke elemen tetapi saya lebih suka metode html.
Ada ide?
Jawaban:
Dua arah. Entah buat tombol dan gaya itu sehingga terlihat seperti tautan dengan css, atau buat tautan dan gunakan
onclick="this.closest('form').submit();return false;"
.sumber
form.submit()
tidak akan berfungsi tanpa JavaScriptinput[type=submit].link { border: none; background: none; display: inline; color: blue; text-decoration: underline; }
dan<input type=submit class="link" />
Anda tidak dapat benar-benar melakukan ini tanpa beberapa bentuk skrip sepengetahuan saya.
Contoh dari Sini .
sumber
Mendesain yang
input type="submit"
seperti ini cocok untuk saya:Diuji di Chrome, IE 7-9, Firefox
sumber
input
elemen yang sesuai menggunakan pemilih CSS tanpa melampirkan kelas ke elemen HTML.Anda menggunakan gambar untuk mengirim .. sehingga Anda cukup menggunakan
type="image"
input "tombol":sumber
<button>
elemen dengan<img/>
elemen di dalamnya.menggunakan:
atau:
ditambah beberapa CSS
sumber
Jelas, tidak ada solusi dengan HTML murni untuk mengirimkan formulir dengan
a
tag tautan ( ). HTML standar hanya menerima tombol atau gambar. Seperti yang dikatakan beberapa kolaborator lain, orang dapat mensimulasikan tampilan tautan menggunakan tombol, tapi saya kira itu bukan tujuan dari pertanyaan.IMHO, saya percaya bahwa solusi yang diajukan dan diterima tidak bekerja.
Saya telah mengujinya di formulir dan browser tidak menemukan referensi ke formulir.
Jadi adalah mungkin untuk menyelesaikannya menggunakan satu baris JavaScript, menggunakan
this
objek, yang mereferensikan elemen yang diklik, yang merupakan simpul anak dari formulir, yang perlu diserahkan. Begituthis.parentNode
juga dengan bentuk simpul. Setelah itu baru memanggilsubmit()
metode dalam bentuk itu. Tidak perlu penelitian dari seluruh dokumen untuk menemukan formulir yang tepat.Misalkan saya masuk dengan nama saya sendiri:
Saya telah menggunakan
get
atribut metode formulir karena dimungkinkan untuk melihat parameter yang tepat di URL di laman yang dimuat setelah mengirim.Solusi ini jelas berlaku untuk semua tag yang menerima
onclick
acara atau kejadian serupa.this
adalah pilihan yang sangat baik untuk memulihkan konteks bersama denganevent
variabel (tersedia di semua browser utama dan IE9 dan seterusnya) yang dapat digunakan secara langsung atau diteruskan sebagai argumen ke suatu fungsi.Dalam hal ini, ganti baris dengan
a
tag dengan garis di bawah ini, menggunakan propertitarget
, yang menunjukkan elemen yang telah memulai acara.sumber
Stackoverflow
. Saya harap koreksi Anda membantu saya meningkatkan gaya saya. Bahasa Inggris saya juga tidak bagus.Anda dapat menggunakan OnClick = "document.getElementById ('formID_NOT_NAME'). SUBMIT ()"
sumber