ভবিষ্যতের ইন্টারনেট অনুসন্ধানকারী:
নতুন ব্রাউজারগুলির জন্য (2018 হিসাবে: ক্রোম, ফায়ারফক্স, সাফারি, অপেরা, এজ এবং সর্বাধিক মোবাইল ব্রাউজারগুলি, তবে আইআই নয়), fetch
একটি স্ট্যান্ডার্ড এপিআই যা অ্যাসিঙ্ক্রোনাস নেটওয়ার্ক কলকে সহজতর করে (যার জন্য আমরা প্রয়োজন XMLHttpRequest
বা জিকুয়েরি ব্যবহার করি $.ajax
)।
এখানে একটি traditionalতিহ্যবাহী ফর্ম:
<form id="myFormId" action="/api/process/form" method="post">
<!-- form fields here -->
<button type="submit">SubmitAction</button>
</form>
যদি উপরের মতো কোনও ফর্ম আপনার হাতে দেওয়া হয় (বা আপনি এটি তৈরি করেছেন কারণ এটি শব্দার্থক এইচটিএমএল), তবে আপনি fetch
কোনও ইভেন্ট শ্রোতার মধ্যে কোডটি নীচের মত মোড়ানো করতে পারেন :
document.forms['myFormId'].addEventListener('submit', (event) => {
event.preventDefault();
// TODO do something here to show user that form is being submitted
fetch(event.target.action, {
method: 'POST',
body: new URLSearchParams(new FormData(event.target)) // event.target is the form
}).then((resp) => {
return resp.json(); // or resp.text() or whatever the server sends
}).then((body) => {
// TODO handle body
}).catch((error) => {
// TODO handle error
});
});
(অথবা, যদি আপনি কোনও মূল জমা দেওয়ার ইভেন্ট ছাড়াই ম্যানুয়ালি কল করতে চান তবে মূল পোস্টারটির মতো, কেবল fetch
কোডটি সেখানে রেখে দিন এবং form
ব্যবহারের পরিবর্তে উপাদানটির একটি রেফারেন্স দিন event.target
))
দস্তাবেজ:
আনুন:
https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API
অন্যান্য:
https://developer.mozilla.org/en-US/docs/Learn/HTML/
Forms/Send_forms_through_ জাভা স্ক্রিপ্ট 2018 এর সেই পৃষ্ঠাটিতে আনার (এখনও) উল্লেখ করা হয়নি। তবে এতে উল্লেখ করা হয়েছে যে লক্ষ্য = "মাইআইফ্রেম" কৌতুক হ্রাস করা হয়েছে। এবং এটিতে 'জমা দিন' ইভেন্টের জন্য form.addEventListener এর একটি উদাহরণও রয়েছে।