Nasıl bir bağlantısını tıklayarak JavaScript ile bir form göndermek için?
Bir yerine bir bağlantı var gönder butonuna:
<form>
<a href="#"> submit </a>
</form>
Tıklandığı zaman teslim olun şeklinde alabilir miyim?
CEVAP
En iyi yolu
En iyi yolu, uygun bir giriş etiketi eklemek için:
<input type="submit" value="submit" />
JS en iyi yolu
<form id="form-id">
<button id="your-id">submit</button>
</form>
var form = document.getElementById("form-id");
document.getElementById("your-id").addEventListener("click", function () {
form.submit();
});
Alın DOMContentLoaded
bir olay (sadece load
backward compatiblity için seçin) tarafından ikincisi JavaScript kodu varsa çünkü eğer doğru değilse:
window.addEventListener("DOMContentLoaded", function () {
var form = document.... // copy the last code block!
});
Kolay değil, recommandable yolu (eski cevap)
Link ve form için: bir kimliği özelliği bir olay Ekle
<form id="form-id">
<a href="#" onclick="document.getElementById('form-id').submit();"> submit </a>
</form>
Tüm yollar
Neyi seçerseniz seçin, formObject.submit()
sonunda formObject
<form>
etiket DOM nesnesi olduğu) arama.
Ayrıca formObject.submit()
, çağıran böyle bir olay işleyicisi bağlamak için kullanıcı belirli bir bağlantı veya düğme tıklandığında adı alır. İki yolu vardır:
Önerilen:DOM için bir olay dinleyicisi nesne bağlama.
// 1. Acquire a reference to our <form>. // This can also be done by setting <form name="blub">: // var form = document.forms.blub; var form = document.getElementById("form-id"); // 2. Get a reference to our preferred element (link/button, see below) and // add an event listener for the "click" event. document.getElementById("your-id").addEventListener("click", function () { form.submit(); });
Tavsiye:Satır içi JavaScript. Bu tekniği tavsiye değil çeşitli nedenleri vardır. Önemli bir değişkeni, komut dosyaları (JS) ile biçimlendirme (HTML) karışımı. Kodu düzensiz ve oldukça unmaintainable olur.
<a href="#" onclick="document.getElementById('form-id').submit();">submit</a> <button onclick="document.getElementById('form-id').submit();">submit</button>
Şimdi, gönder tetikler UI öğesi için karar vermek zorunda noktasına geldik() arayın.
Bir düğme
<button>submit</button>
Bir bağlantı
<a href="#">submit</a>
Bir olay dinleyicisi eklemek için, söz konusu teknikleri uygular.
Nasıl bir form PhantomJS kullanarak gö...
Ruby: parçalı olarak HTTP üzerinden bi...
Nasıl JavaScript bir e-posta göndermek...
Nasıl AngularJS $http urlencoded form ...
Nasıl bir form-data” Voleybolu ile POS...