İnsanlar gerekli olmadığında neden her zaman jQuery kullanıyor?
İnsanlar neden basit JavaScript kullanamıyor?
var ele = /*Your Form Element*/;
if(ele.addEventListener){
ele.addEventListener("submit", callback, false); //Modern browsers
}else if(ele.attachEvent){
ele.attachEvent('onsubmit', callback); //Old IE
}
callback form gönderilirken aramak istediğiniz bir işlevdir.
Hakkında EventTarget.addEventListener, MDN ile ilgili bu belgelere göz atın .
Yerel submitolayı iptal etmek için (formun gönderilmesini engellemek), .preventDefault()geri arama işlevinizde kullanın ,
document.querySelector("#myForm").addEventListener("submit", function(e){
if(!isValid){
e.preventDefault(); //stop form from submitting
}
});
submitEtkinliği kütüphanelerle dinlemek
Herhangi bir nedenle bir kitaplığın gerekli olduğuna karar verdiyseniz (zaten bir kitaplık kullanıyorsanız veya tarayıcılar arası sorunlarla uğraşmak istemiyorsanız), ortak kitaplıklarda gönderme olayını dinlemenin yollarının bir listesi:
jQuery
$(ele).submit(callback);
eleForm öğesi başvurusu nerede ve callbackgeri arama işlevi başvurusu. Referans
<iframe width="100%" height="100%" src="http://jsfiddle.net/DerekL/wnbo1hq0/show" frameborder="0"></iframe>
AngularJS (1.x)
<form ng-submit="callback()">
$scope.callback = function(){ /*...*/ };
Çok basit, denetleyicinizin$scope içindeki çerçeve tarafından sağlanan kapsam nerede ? Referans
Tepki
<form onSubmit={this.handleSubmit}>
class YourComponent extends Component {
// stuff
handleSubmit(event) {
// do whatever you need here
// if you need to stop the submit event and
// perform/dispatch your own actions
event.preventDefault();
}
// more stuff
}
Sadece bir işleyiciyi onSubmitpervaneye iletin. Referans
Diğer çerçeveler / kitaplıklar
Çerçevenizin belgelerine bakın.
onaylama
Doğrulamanızı her zaman JavaScript'te yapabilirsiniz, ancak HTML5 ile yerel doğrulamaya da sahibiz.
<!-- Must be a 5 digit number -->
<input type="number" required pattern="\d{5}">
JavaScript'e bile ihtiyacınız yok! Yerel doğrulama desteklenmediğinde, bir JavaScript doğrulayıcıya geri dönebilirsiniz.
Demo: http://jsfiddle.net/DerekL/L23wmo1L/
document.forms['yourForm'].onsubmit = function(){}? VeyaaddEventListener?