JavaScript Forms: সম্পূর্ণ বিশদ বাংলা টিউটোরিয়াল
ফর্ম(Form) হলো HTML ডকুমেন্টের একটি অংশ, যা ব্যবহারকারীর কাছ থেকে ডেটা সংগ্রহ করার জন্য ব্যবহৃত হয়। JavaScript ব্যবহার করে আমরা ফর্মের উপাদানগুলোকে নিয়ন্ত্রণ করতে পারি, ডেটা সংগ্রহ, ভ্যালিডেশন এবং সাবমিশন প্রসেস নিয়ন্ত্রণ করতে পারি।
HTML ফর্মের মূল উপাদানসমূহ
ফর্মে সাধারণত নিচের উপাদানগুলো থাকে:
<form>– ফর্মের মূল কন্টেইনার<input>– বিভিন্ন ধরনের ইনপুট ফিল্ড (text, password, radio, checkbox, ইত্যাদি)<textarea>– মাল্টিলাইন টেক্সট ইনপুট<select>এবং<option>– ড্রপডাউন মেনু<button>– সাবমিট বা অন্যান্য বাটন
JavaScript দিয়ে ফর্মের ডেটা কিভাবে অ্যাক্সেস ও পরিবর্তন করবেন?
JavaScript এর document.forms প্রপার্টি দিয়ে ফর্ম এবং তার ইনপুট ফিল্ডগুলো অ্যাক্সেস করা যায়।
<form id="myForm">
নাম: <input type="text" name="username" value="রকিব"><br>
পাসওয়ার্ড: <input type="password" name="password" value="12345"><br>
<input type="submit" value="সাবমিট">
</form>
<script>
// ফর্ম অ্যাক্সেস
const form = document.forms['myForm']; // বা document.getElementById('myForm')
// ইনপুট ফিল্ডের ভ্যালু পড়া
console.log("নাম:", form.username.value);
console.log("পাসওয়ার্ড:", form.password.value);
// ইনপুট ভ্যালু পরিবর্তন
form.username.value = "নতুন নাম";
</script>
✅ ফর্ম সাবমিশন ইভেন্ট নিয়ন্ত্রণ
JavaScript দিয়ে ফর্ম সাবমিশন ইভেন্ট নিয়ন্ত্রণ করে আপনি ডেটা সাবমিটের আগে ভ্যালিডেশন করতে পারেন বা সাবমিশন বাতিল করতে পারেন।
<form id="loginForm">
ইমেইল: <input type="email" name="email"><br>
পাসওয়ার্ড: <input type="password" name="password"><br>
<input type="submit" value="লগইন">
</form>
<script>
const form = document.getElementById('loginForm');
form.addEventListener('submit', function(event) {
const email = form.email.value;
const password = form.password.value;
if(email === '' || password === '') {
alert('সব ফিল্ড পূরণ করুন!');
event.preventDefault(); // সাবমিশন বন্ধ করবে
}
});
</script>
ফর্মের বিভিন্ন ইনপুট টাইপ এবং তাদের ব্যবহার
| ইনপুট টাইপ | ব্যবহার | JS ভ্যালু অ্যাক্সেস |
|---|---|---|
| text | সাধারণ টেক্সট ইনপুট | form.inputName.value |
| password | পাসওয়ার্ড ইনপুট | form.inputName.value |
| checkbox | টিকবক্স নির্বাচন | form.inputName.checked (true/false) |
| radio | একাধিক অপশনের মধ্যে একটি নির্বাচন | form.inputName.value |
| select | ড্রপডাউন মেনু থেকে নির্বাচন | form.selectName.value |
উদাহরণ: ফর্ম ডেটা পাঠানো এবং ভ্যালিডেশন
<form id="regForm">
নাম: <input type="text" name="name" id="name"><br>
ইমেইল: <input type="email" name="email" id="email"><br>
পাসওয়ার্ড: <input type="password" name="password" id="password"><br>
<input type="submit" value="রেজিস্টার">
</form>
<script>
const form = document.getElementById('regForm');
form.addEventListener('submit', function(e) {
e.preventDefault();
const name = form.name.value.trim();
const email = form.email.value.trim();
const password = form.password.value.trim();
if(name === '' || email === '' || password === '') {
alert('সকল ফিল্ড পূরণ করুন।');
return;
}
if(password.length < 6) {
alert('পাসওয়ার্ড কমপক্ষে ৬ অক্ষরের হতে হবে।');
return;
}
alert('রেজিস্ট্রেশন সফল হয়েছে!\n' + 'নাম: ' + name + '\nইমেইল: ' + email);
form.reset(); // ফর্ম রিসেট করে
});
</script>
⚠️ গুরুত্বপূর্ণ টিপস ও সতর্কতা
- জাভাস্ক্রিপ্টে ভ্যালিডেশন শুধুমাত্র ইউজার এক্সপিরিয়েন্সের জন্য; সার্ভার সাইড ভ্যালিডেশন অবশ্যই করতে হবে।
- ফর্মের ডেটা পাস করার সময় XSS আক্রমণ এড়াতে ইনপুটগুলো স্যানিটাইজেশন করুন।
- ফর্ম ইভেন্ট হ্যান্ডলার ব্যবহার করে সাবমিশন নিয়ন্ত্রণ করুন এবং প্রয়োজনে
event.preventDefault()ব্যবহার করুন।
️ ট্যাগসমূহ:
বাংলা ট্যাগ: