লোকেরা যখন প্রয়োজন হয় না কেন তারা সবসময় 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
। উল্লেখ
অন্যান্য ফ্রেমওয়ার্ক / গ্রন্থাগারগুলি
আপনার কাঠামোর ডকুমেন্টেশন দেখুন।
ভ্যালিডেশন
আপনি সবসময় জাভাস্ক্রিপ্টে আপনার বৈধতা করতে পারেন, তবে এইচটিএমএল 5 এর সাথে আমাদের দেশীয় বৈধতাও রয়েছে।
<!-- Must be a 5 digit number -->
<input type="number" required pattern="\d{5}">
আপনার কোনও জাভাস্ক্রিপ্টও দরকার নেই! যখনই নেটিভ বৈধতা সমর্থিত নয়, আপনি জাভাস্ক্রিপ্ট বৈধকরণকারীর কাছে ফ্যালব্যাক করতে পারেন।
ডেমো: http://jsfiddle.net/DerekL/L23wmo1L/
document.forms['yourForm'].onsubmit = function(){}
? নাকিaddEventListener
?