আমি যখন রেডিও বোতামের গ্রুপটি পরিবর্তন / ক্লিক করা হয় তখন উপাদানগুলি লুকিয়ে রাখতে এবং দেখানোর জন্য আমি jQuery ব্যবহার করছি। এটি ফায়ারফক্সের মতো ব্রাউজারগুলিতে দুর্দান্ত কাজ করে তবে IE 6 এবং 7 এ, ক্রিয়াটি তখনই ঘটে যখন ব্যবহারকারী তারপরে পৃষ্ঠায় অন্য কোথাও ক্লিক করেন।
বিস্তারিতভাবে বলতে গেলে, আপনি পৃষ্ঠাটি লোড করার সময়, সবকিছু ঠিকঠাক দেখাচ্ছে। ফায়ারফক্সে, আপনি যদি রেডিও বোতামটি ক্লিক করেন তবে একটি টেবিলের সারিটি গোপন করা হবে এবং অন্যটি অবিলম্বে প্রদর্শিত হবে। তবে, IE 6 এবং 7 এ আপনি রেডিও বোতামটি ক্লিক করেন এবং পৃষ্ঠায় কোথাও ক্লিক না করা পর্যন্ত কিছুই হবে না। তবেই IE প্রাসঙ্গিক উপাদানগুলি গোপন করে এবং প্রদর্শন করে পৃষ্ঠাটি পুনরায় আঁকেন।
আমি যে jQuery ব্যবহার করছি তা এখানে:
$(document).ready(function () {
$(".hiddenOnLoad").hide();
$("#viewByOrg").change(function () {
$(".visibleOnLoad").show();
$(".hiddenOnLoad").hide();
});
$("#viewByProduct").change(function () {
$(".visibleOnLoad").hide();
$(".hiddenOnLoad").show();
});
});
এটি প্রভাবিত করে এমন এক্সএইচটিএমএলের অংশটি এখানে। পুরো পৃষ্ঠাটি এক্সএইচটিএমএল 1.0 স্ট্রাইক হিসাবে বৈধ হয়েছে।
<tr>
<td>View by:</td>
<td>
<p>
<input type="radio" name="viewBy" id="viewByOrg" value="organisation"
checked="checked" />Organisation</p>
<p>
<input type="radio" name="viewBy" id="viewByProduct" value="product" />Product</p>
</td>
</tr>
<tr class="visibleOnLoad">
<td>Organisation:</td>
<td>
<select name="organisation" id="organisation" multiple="multiple" size="10">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
</select>
</td>
</tr>
<tr class="hiddenOnLoad">
<td>Product:</td>
<td>
<select name="product" id="product" multiple="multiple" size="10">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
</select>
</td>
</tr>
কেন এমনটি ঘটছে এবং কীভাবে এটি ঠিক করবেন সে সম্পর্কে কারও যদি ধারণা থাকে তবে তাদের খুব প্রশংসা হবে!