formaction অ্যাট্রিবিউট <form> বাইরে কাজ না করার কারণ এবং সমাধান
আমরা formaction অ্যাট্রিবিউটকে <form> ট্যাগের বাইরে কাজ করতে দিতে পারি। formaction অ্যাট্রিবিউট একাধিক সাবমিট URL একই ফর্মের জন্য নির্দিষ্ট করতে ব্যবহৃত হয়। আপনি যখন একটি ফর্ম সাবমিট করেন, ব্রাউজার প্রথমে formaction অ্যাট্রিবিউট খুঁজে বের করে।
যদি formaction না থাকে, ব্রাউজার ফর্ম এলিমেন্টের action অ্যাট্রিবিউট খুঁজে বের করে।
উদাহরণ
এখানে formaction অ্যাট্রিবিউটের সাথে তিনটি আলাদা সাবমিট বাটনের উদাহরণ দেওয়া হলো:
<!DOCTYPE html>
<html>
<head>
<title>HTML formaction attribute</title>
</head>
<body>
<form method="post">
<input type="text" name="name"/><br>
<button type="submit" formaction="btn1.php">Button1</button>
<button type="submit" formaction="btn2.php">Button2</button>
<button type="submit" formaction="btn3.php">Button3</button>
</form>
</body>
</html>
হ্যাঁ, formaction অ্যাট্রিবিউট ফর্ম এলিমেন্টের বাইরে কাজ করে না, কিন্তু আপনি নিচের পদ্ধতিতে সঠিকভাবে কাজ করতে পারেন:

সমাধান
আপনি সহজেই বাটনকে ফর্মের বাইরে রাখতে পারেন এবং formaction অ্যাট্রিবিউট ব্যবহার করতে পারেন, সংশ্লিষ্ট ফর্মের id ভ্যালু ব্যবহার করে।
<!DOCTYPE html>
<html>
<head>
<title>HTML formaction attribute</title>
</head>
<body>
<form method="post" id="newForm">
<input type="text" name="name"/>
</form>
<button type="submit" formaction="btn1.php" form="newForm">Button1</button>
<button type="submit" formaction="btn2.php" form="newForm">Button2</button>
<button type="submit" formaction="btn3.php" form="newForm">Button3</button>
</body>
</html>
ব্যাখ্যা:
- ফর্মে
id="newForm"দিন - বাইরের বাটনগুলিতে
form="newForm"অ্যাট্রিবিউট যোগ করুন - তখন বাটনগুলো ফর্মের অংশ মনে হবে এবং
formactionকাজ করবে