আপনি নির্বাচিত উপাদানগুলির মধ্যে চেকবক্স রাখতে পারবেন না তবে আপনি এইচটিএমএল, সিএসএস এবং জাভাস্ক্রিপ্ট ব্যবহার করে একই কার্যকারিতাটি পেতে পারেন। এখানে একটি সম্ভাব্য কার্যক্ষম সমাধান। ব্যাখ্যা অনুসরণ।
কোড:
var expanded = false;
function showCheckboxes() {
var checkboxes = document.getElementById("checkboxes");
if (!expanded) {
checkboxes.style.display = "block";
expanded = true;
} else {
checkboxes.style.display = "none";
expanded = false;
}
}
.multiselect {
width: 200px;
}
.selectBox {
position: relative;
}
.selectBox select {
width: 100%;
font-weight: bold;
}
.overSelect {
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
}
#checkboxes {
display: none;
border: 1px #dadada solid;
}
#checkboxes label {
display: block;
}
#checkboxes label:hover {
background-color: #1e90ff;
}
<form>
<div class="multiselect">
<div class="selectBox" onclick="showCheckboxes()">
<select>
<option>Select an option</option>
</select>
<div class="overSelect"></div>
</div>
<div id="checkboxes">
<label for="one">
<input type="checkbox" id="one" />First checkbox</label>
<label for="two">
<input type="checkbox" id="two" />Second checkbox</label>
<label for="three">
<input type="checkbox" id="three" />Third checkbox</label>
</div>
</div>
</form>
ব্যাখ্যা:
প্রথমে আমরা একটি নির্বাচনী উপাদান তৈরি করি যা "একটি বিকল্প নির্বাচন করুন", এবং খালি উপাদান যা নির্বাচিত উপাদান ( <div class="overSelect">
) কে আবরণ করে (ওভারল্যাপ করে) দেখায় । আমরা চাই না যে ব্যবহারকারী নির্বাচিত উপাদানটিতে ক্লিক করুন - এটি একটি খালি বিকল্প প্রদর্শন করবে। অন্যান্য উপাদানটির সাথে উপাদানটি ওভারল্যাপ করতে আমরা সিএসএস অবস্থানের সম্পত্তিটি মানের সাথে সম্পর্কিত use পরম।
কার্যকারিতা যুক্ত করতে আমরা একটি জাভাস্ক্রিপ্ট ফাংশন নির্দিষ্ট করি যা বলা হয় যখন ব্যবহারকারীটি আমাদের নির্বাচিত উপাদান ( <div class="selectBox" onclick="showCheckboxes()">
) থাকে এমন ডিভিতে ক্লিক করে ।
আমরা ডিভিও তৈরি করি যা আমাদের চেকবাক্সগুলি ধারণ করে এবং CSS ব্যবহার করে এটি স্টাইল করে। উপরে উল্লিখিত জাভাস্ক্রিপ্ট ফাংশনটি কেবলমাত্র <div id="checkboxes">
"কিছুই নয়" থেকে "ব্লক" এবং এর বিপরীতে সিএসএস প্রদর্শন সম্পত্তিটির মান পরিবর্তন করে ।
সমাধানটি নিম্নলিখিত ব্রাউজারগুলিতে পরীক্ষা করা হয়েছিল: ইন্টারনেট এক্সপ্লোরার 10, ফায়ারফক্স 34, ক্রোম 39. ব্রাউজারটির জাভাস্ক্রিপ্ট সক্ষম হওয়া দরকার।
অধিক তথ্য:
সিএসএস পজিশনিং
কীভাবে একটি ডিভকে অন্য ডিভের উপরে ওভারলে করা যায়
http://www.w3schools.com/css/css_positioning.asp
সিএসএস প্রদর্শন সম্পত্তি
http://www.w3schools.com/cssref/pr_class_display.asp