जब आवश्यक नहीं है तो लोग हमेशा jQuery का उपयोग क्यों करते हैं?
लोग साधारण जावास्क्रिप्ट का उपयोग क्यों नहीं कर सकते?
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 एक फ़ंक्शन है जिसे आप फॉर्म सबमिट होने पर कॉल करना चाहते हैं।
के बारे में EventTarget.addEventListener, MDN पर इस दस्तावेज़ को देखें ।
मूल submitघटना को रद्द करने के लिए (फ़ॉर्म को सबमिट होने से रोकें), .preventDefault()अपने कॉलबैक फ़ंक्शन में उपयोग करें,
document.querySelector("#myForm").addEventListener("submit", function(e){
if(!isValid){
e.preventDefault(); //stop form from submitting
}
});
submitपुस्तकालयों के साथ घटना को सुनकर
यदि किसी कारण से आपने लाइब्रेरी का निर्णय लिया है, तो आप आवश्यक हैं (आप पहले से ही एक का उपयोग कर रहे हैं या आप क्रॉस-ब्राउज़र मुद्दों से निपटना नहीं चाहते हैं), यहां आम पुस्तकालयों में प्रस्तुत कार्यक्रम को सुनने के तरीकों की एक सूची दी गई है:
jQuery
$(ele).submit(callback);
eleप्रपत्र तत्व संदर्भ कहां है, और callbackकॉलबैक फ़ंक्शन संदर्भ है। संदर्भ
<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(){ /*...*/ };
बहुत सीधा है, जहां $scopeआपके नियंत्रक के अंदर रूपरेखा द्वारा प्रदान की गई गुंजाइश है । संदर्भ
प्रतिक्रिया
<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
}
बस एक हैंडलर में onSubmitप्रस्ताव पास करें। संदर्भ
अन्य ढांचे / पुस्तकालय
अपने ढांचे के प्रलेखन का संदर्भ लें।
मान्यकरण
आप हमेशा जावास्क्रिप्ट में अपना सत्यापन कर सकते हैं, लेकिन HTML5 के साथ हमारे पास मूल सत्यापन भी है।
<!-- Must be a 5 digit number -->
<input type="number" required pattern="\d{5}">
आप किसी भी जावास्क्रिप्ट की जरूरत नहीं है! जब भी देशी सत्यापन का समर्थन नहीं किया जाता है, तो आप जावास्क्रिप्ट सत्यापनकर्ता को वापस कर सकते हैं।
डेमो: http://jsfiddle.net/DerekL/L23wmo1L/
document.forms['yourForm'].onsubmit = function(){}? याaddEventListener?