আসসালামু আলাইকুম।আশা করি ভাল আছেন। এ পর্বে আমরা আরও একটি বিল্ট-ইন ফাংশন নিয়ে আলোচনা করব। আসুন তাহলে শুরু করি।
prompt(): এটিও দেখতে এলার্ট বক্সের মত। তবে এতে একটি ইনপুট বক্স থাকে যেখানে ইউজারকে কোনকিছু (যেমনঃ-number, text etc.) লিখে ইনপুট করতে বলা হয়।আবার এর দুটি বাটন থাকে। একটি ok এবং অপরটি cencel ।যেমনঃ-
<script type="text/javascript"> prompt("Enter your name please",""); </script>
প্রথম লাইনটির মধ্যে দেখুন একটি সংযুক্তি রয়েছে। আর তা হলো type="javascript" আর এটি একটি HTML Attrinuties যা না লিখলে আউটপুটে সমস্যা হয় না কিন্ত html validation এ error দেখায়। আমাদের জন্য এ মুহুর্তে গুরুত্বপুর্ণ হলো ২য়টি লাইনটি। এখানে prompt() এর ভিতরে ১ম ডাবল কোটেশনের ভিতর রয়েছে কিছু টেক্সট যা আমরা আমদের প্রয়োজন অনুসারে লিখতে পারি। তারপরে আছে কমা(,) তারপর আবার ডাবল কোটেশন। ২য় ডাবল কোটেশন ইনপুট অংশটি নির্দেশ করে। এখন উপরোক্ত কোড সমূহ দিয়ে তৈরিকৃত পেজটি ব্রাউজার দিয়ে ওপেন করলে যে প্রম্পট বক্সটি আসবে তাতে কিছু লিখে ok বাটন ক্লিক করি। কি অবাক হচ্ছেন? পর্দায় কিছুই নেই। কেন?
কারণ prompt() এর কাজ হলো text বা number জাতীয় ডাটা ইনপুট করা, প্রদর্শন করা নয়। তাহলে প্রদর্শনের উপায়? উপায় ইতোমধ্যে আমদের জানা হয়ে গেছে। আর তা হলো- document.write() অথবা alert() বক্স। এর জন্য কোড হবে নিম্নরূপঃ-
<script type="text/javascript"> document.write(prompt("Enter your name:","")); </script>
অথবা
<script type="text/javascript"> alert(prompt("Enter your name:","")); </script>
এবার পেজটি ব্রাউজারে রান করে লিখুন ১২+১২ এবং তারপর ok বাটন ক্লিক করুন। ফলাফল ১২+১২ আসবে। অর্থাৎ prompt() ফাংশনটিতে টেক্সট বা নাম্বার যা-ই ইনপুট হিসেবে লিখা হোক তা string ডাটা হিসেবে থাকে। আবার prompt() যদি document.write() এর ভিতরে থাকে তাহলে তা HTML tag এবং Attributes কে সাপোর্ট করে। যেমন নিম্নোক্ত কোড দিয়ে একটি পেজ তৈরি করি।
<script type="text/javascript"> document.write(prompt("Enter some text with HTML tags and attributes:","")); </script>
পেজটি ব্রাউজার দিয়ে ওপেন করলে নিম্নোক্ত প্রম্পট বক্স আসবে।
এবার এতে লিখুন <font color="blue">I am BLUE.</font><br>Are you also? তারপর ok বাটন চাপুন। ফলাফল হবে নিম্নরূপঃ-
I am BLUE.
Are you also?
কিন্তু prompt() যদি alert()এর ভিতরে থাকে তাহলে তা HTML tag ও attributes সাপোর্ট করে না বরং সেগুলোকে টেক্সট হিসেবে প্রদর্শন করে।
এবার নিম্নোক্ত কোড দিয়ে একটি পেজ তৈরি করি।
<script> document.write("Welcome "+prompt("Enter your name:","")); </script>
তারপর পেজটি ওপেন করে প্রম্পট বক্সে লিখুন bdtuner । ফলাফল হবে নিম্নরূপঃ-
Welcome bdtuner
তবে ব্যবহারিক ক্ষেত্রে prompt()কে সাধারণত সরাসরি document.write() বা alert() এর ভিতর রাখা হয় না বরং তাকে একটি চলকের ভিতর রাখা হয়।এতে করে একে বিভিন্ন কাজে সহজে ব্যবহার করা যায়। এক্ষেত্রে কোড হবে নিম্নরূপঃ-
<script> var a = prompt("Enter some text:",""); document.write(a); </script>
চলক বা variable সম্পর্কে যেহেতু আলোচনা হয়নি সেহেতু হয়ত বুঝতে সমস্যা হতে পারে । তবে উদ্বিগ্ন হবেন না । আগামী পর্বটাই হবে চলক সম্পর্কিত।
[ইনশাল্লাহ চলবে]
আমি bdtuner। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 12 বছর যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 4 টি টিউন ও 4 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 0 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।
good carryon