A simple jquery multi selection drop down box of self written

  • 2020-03-30 02:51:57
  • OfStack

Today's project to use the multi-selection of the drop-down box, I began to want to find a plug-in on the Internet to use, but, online plug-ins look messy, I referred to some of the online plug-ins, I wrote a multi-selection drop-down box with jquery, js write more concise. The code is as follows.

Js code
 
(function(){ 
$.fn.extend({ 
checks_select: function(options){ 
jq_checks_select = null; 
$(this).click(function(e){ 
jq_check = $(this); 
//jq_check.attr("class", ""); 
if (jq_checks_select == null) { 
jq_checks_select = $("<div class='checks_div_select'></div>").insertAfter(jq_check); 
$.each(options, function(i, n){ 
check_div=$("<div><input type='checkbox' value='" + n + "'>" + n + "</div>").appendTo(jq_checks_select); 
check_box=check_div.children(); 
check_box.click(function(e){ 
//jq_check.attr("value",$(this).attr("value") ); 

temp=""; 
$("input:checked").each(function(i){ 
if(i==0){ 
temp=$(this).attr("value"); 
}else{ 
temp+=" , "+$(this).attr("value"); 
} 
}); 
jq_check.attr("value",temp); 
e.stopPropagation(); 
}); 
}); 
}else{ 
jq_checks_select.toggle(); 

} 
e.stopPropagation(); 
}); 
$(document).click(function () { 
jq_checks_select.hide(); 
}); 
//$(this).blur(function(){ 
//jq_checks_select.css("visibility","hidden"); 
//alert(); 
//}); 
} 
}) 

})(jQuery); 

HTML
 
<html> 
<head> 
<script type="text/javascript" src="js/jquery-1.3.2.js"> 
</script> 
<script type="text/javascript" src="js/jquery2.1.js"> 
</script> 
<script type="text/javascript" src="js/jquery-mah-UI.js"> 
</script> 
<script language="javascript"> 
$(document).ready(function(){ 
var options = { 
1: " The first option ", 
2: " Second option ", 
3: " The third option ", 
4: " The fourth option ", 
5: " The fifth option ", 
6: " The sixth option " 
}; 
$("#test_div").checks_select(options); 
}); 
</script> 
<style> 
.checks_div_select { 
width: 150px; 
background-color: #e9fbfb; 
border: 1px solid #18cbcd; 
font-family: 'Verdana', ' Song typeface '; 
font-size: 12px; 
position:absolute; 
left:2px; 
top:25px; 
} 
</style> 
</head> 
<body> 
<div style="position:relative;"> 
<input type="text" id="test_div"/> 
</div> 
</body> 
</html> 

You need the jquery class library

Related articles: