somewhere in... blog
x
ফোনেটিক ইউনিজয় বিজয়

আজ Ajax শিখব(২)

১৯ শে মার্চ, ২০১০ দুপুর ১:০৩
এই পোস্টটি শেয়ার করতে চাইলে :

অনেক দিন হয়ে গেল সময়ই বের করতে পারছিলাম না। যাই হোক দেরিতে হলেও আবার আমরা Ajax - এর ব্যবহার করতে যে সমস্ত সাধারন সমস্যার সম্মুখীন হই তার বিস্তারিত আলোচনা করব। গত লিখায় আমরা সমস্যা ও তার কিছু সমাধান সংক্ষেপে দেখেছিলাম। আজ আমরা উদাহরণ সহ এগুলো বিস্তারিত আলোচনা করব।

১. Run-Time Script Loading Problem:
সমস্যার মূল কারন হচ্ছে, ajax এর মাধ্যমে প্রাপ্ত "data", string হিসেবে থাকে। ফলে script, CSS এগুলো কাজ করে না, যদিও এ code গুলোও document -এ থাকে।
একটু ব্যখ্যা করলে আশা করি বুঝতে সহজ হবে। মনে করি আমরা এমন কিছু ডাটা ajax সহযোগে দেখাতে চাচ্ছি যেখানে CSS style ট্যাগ রয়েছে। সেখেত্রে style গুলো অকার্যকর থাকে।
উদাহরণ:


.redspan {color:red}

Roni This is the styled red span

উপরের content আমরা যেকোন browser -এ দেখলে "This is the styled red span" লাল রঙে দেখব কিন্তু ajax ব্যবহার করে load করা হলে লাল দেখা যাবে না। কারন style tag কে browser সাধারন text render করে। এ ঘটনা script tag-এর জন্যেও ঘটে।

এ সমস্যার সমাধান মূলত তিন উপায়ে করা যায়:
ক. load script at startup
main page-এ style/script tags declear করে এ সমস্যা সহজে সমাধান করা যেতে পারে। ajax-এ শুধু HTML content load করলেই হবে। কিন্তু script বেশী হলে এ পদ্ধতী ব্যবহার না করাই ভাল।
খ. Use of eval()
এক্ষেত্রে script code part আলাদা করে eval function use করা যেতে পারে। eval() function যেকোন string কে script statement হিসাবে execute করে।
একাধিক script file load করার ক্ষেত্র যদি script dependency থাকে তাহলে এই পদ্ধতী ব্যবহার করা ভাল হয়। eval javascript statement execute করার জন্য ব্যবহারযোগ্য style tag-এর জন্য নয়।
গ. DOM object তৈরি করে(সবচেয়ে জনপ্রিয়)
এটা সবচেয়ে কার্যকরী ও জনপ্রিয় পদ্ধতী। এর মাধ্যমে javascript or css code আলাদা ভাবে ফাইলে save করে run time-এ script or style tag তৈরি করা হয়।

//foo.js load করার জন্য
var scr = document.createElement("script");
scr.src = "foo.js";
scr.type = "text/javascript";
document.getElementsByTagName("head").item(0).appendChild(scr);

//foo.css load করার জন্য
var scr = document.createElement("link");
scr.href = "foo.css";
scr.rel = "stylesheet";
scr.type = "text/javascript";
document.getElementsByTagName("head").item(0).appendChild(scr);

নিচের function use করে .js or .css ফাইল load করা যেতে পারে
loadscripts("foo.js")
loadscripts("foo.css")

function loadscripts(file){
var fileref="";
if (file.indexOf(".js")!=-1){ //If object is a js file
fileref=document.createElement('script');
fileref.setAttribute("type","text/javascript");
fileref.setAttribute("src", file);
}
else if (file.indexOf(".css")!=-1){ //If object is a css file
fileref=document.createElement("link");
fileref.setAttribute("rel", "stylesheet");
fileref.setAttribute("type", "text/css");
fileref.setAttribute("href", file);
}
if (fileref!=""){
document.getElementsByTagName("head").item(0).appendChild(fileref);
}
}

.....................(চলবে)
সর্বশেষ এডিট : ২৮ শে মার্চ, ২০১০ রাত ৮:১৫
১টি মন্তব্য ১টি উত্তর

আপনার মন্তব্য লিখুন

ছবি সংযুক্ত করতে এখানে ড্রাগ করে আনুন অথবা কম্পিউটারের নির্ধারিত স্থান থেকে সংযুক্ত করুন (সর্বোচ্চ ইমেজ সাইজঃ ১০ মেগাবাইট)
Shore O Shore A Hrosho I Dirgho I Hrosho U Dirgho U Ri E OI O OU Ka Kha Ga Gha Uma Cha Chha Ja Jha Yon To TTho Do Dho MurdhonNo TTo Tho DDo DDho No Po Fo Bo Vo Mo Ontoshto Zo Ro Lo Talobyo Sho Murdhonyo So Dontyo So Ho Zukto Kho Doye Bindu Ro Dhoye Bindu Ro Ontosthyo Yo Khondo Tto Uniswor Bisworgo Chondro Bindu A Kar E Kar O Kar Hrosho I Kar Dirgho I Kar Hrosho U Kar Dirgho U Kar Ou Kar Oi Kar Joiner Ro Fola Zo Fola Ref Ri Kar Hoshonto Doi Bo Dari SpaceBar
এই পোস্টটি শেয়ার করতে চাইলে :
আলোচিত ব্লগ

আগে পরে এক হলে জীবন গেলো শুধু অনেক

লিখেছেন এম ডি মুসা, ০২ রা এপ্রিল, ২০২৫ বিকাল ৫:১৭

দেশের অবস্থা আগের মতোই রয়ে গেলে, কিন্তু এর মাঝে অসংখ্য প্রাণ ঝরে গেল, কেউ জীবন হারিয়েছে, কেউ পঙ্গু হয়ে গেছে। সময় বদলায়, মানুষ বদলায়, কিন্তু বদলায় না কেবল চরিত্র। বদলায়... ...বাকিটুকু পড়ুন

সংস্কার VS নির্বাচন

লিখেছেন ঢাবিয়ান, ০২ রা এপ্রিল, ২০২৫ সন্ধ্যা ৭:৪২



সোস্যাল মিডিয়ায় এখন ডক্টর ইউনুসের কমপক্ষে পাঁচ বছর ক্ষমতায় থাকার পক্ষে জনগন মতামত দিচ্ছে। অন্তবর্তী সরকার এক রক্তক্ষয়ী অভ্যূত্থানের মধ্য দিয়ে ক্ষমতা গ্রহন করেছে। তাই এই সরকারের কাছে মানুষের... ...বাকিটুকু পড়ুন

প্রসঙ্গঃ নিউইয়র্ক টাইমস পত্রিকায় বাংলাদেশ চ্যাপ্টার.....

লিখেছেন জুল ভার্ন, ০২ রা এপ্রিল, ২০২৫ রাত ১০:৫৮

বাংলাদেশ সম্পর্কে নিউইয়র্ক টাইমস এর নিউজটা যথাসময়েই পড়েছিলাম। নিজের মতো করে রিপোর্টের পোস্টমর্টেম রিপোর্ট লিখতেও শুরু করে ছিলাম। কিন্তু চোখের সমস্যার জন্য বিষয়টা শেষ করতে পারিনি।

এবার দেখা যাক বাংলাদেশ... ...বাকিটুকু পড়ুন

বাংলাদেশী রপ্তানিতে যুক্তরাষ্ট্র আরোপিত ট্যারিফ নিয়ে যত ভাবনা

লিখেছেন ইফতেখার ভূইয়া, ০৩ রা এপ্রিল, ২০২৫ সকাল ৮:৪১


আমাদের রাষ্ট্রপতি মহোদয় জনাব ট্রাম্প আজ বিকেলেই সম্ভবত ৫০ টিরও বেশী দেশের আমদানীকৃত পণ্যের উপর নতুন শুল্ক বসানোর সিদ্ধান্ত জানিয়েছেন। সংবাদ সম্মেলনে তিনিও একটি তালিকাও প্রদর্শন করেছেন। হোয়াইট হাউসের এক্স... ...বাকিটুকু পড়ুন

এই দেশ থেকে রাজনৈতিক অন্ধকার দূর করা যায় কিভাবে?

লিখেছেন গেঁয়ো ভূত, ০৩ রা এপ্রিল, ২০২৫ সকাল ১০:১৪

রাজনৈতিক অন্ধকার দূর করা একটি অত্যন্ত গুরুত্বপূর্ণ এবং চ্যালেঞ্জিং বিষয়, যা দেশের উন্নয়ন ও গণতান্ত্রিক প্রক্রিয়ার জন্য অপরিহার্য। এই সমস্যা সমাধানে দেশের নাগরিক সমাজ, রাজনৈতিক দল, শিক্ষাব্যবস্থা, এবং প্রশাসনের যৌথ... ...বাকিটুকু পড়ুন

×