Home  >  Article  >  Web Front-end  >  一个简单的实现下拉框多选的插件可移植性比较好_jquery

一个简单的实现下拉框多选的插件可移植性比较好_jquery

WBOY
WBOYOriginal
2016-05-16 16:49:59881browse

在使用上次写的一个多先下拉框时,我发现了很多问题,经过修改和完善后,现在已经能够很好地使用了,且可移植性也比较好,下面是源代码。

js

复制代码 代码如下:

(function(){

$.fn.extend({
checks_select: function(options){
jq_checks_select = null;
$(this).val("---请选择---");
$(this).next().empty(); //先清空
$(this).unbind("click");
$(this).click(function(e){
jq_check = $(this);
//jq_check.attr("class", "");
if (jq_checks_select == null) {
jq_checks_select = jq_check.next();
jq_checks_select.addClass("checks_div_select");
//jq_checks_select = $("
").insertAfter(jq_check);
$.each(options, function(i, n){
check_div=$("
" + n + "
").appendTo(jq_checks_select);
check_box=check_div.children();
check_box.click(function(e){
//jq_check.attr("value",$(this).attr("value") );

temp="";
$(this).parents().find("input:checked").each(function(i){
if(i==0){
temp=$(this).val();
}else{
temp+=","+$(this).val();
}
});
//alert(temp);
jq_check.val(temp);
e.stopPropagation();
});
});
jq_checks_select.show();
}else{
jq_checks_select.toggle();

}
e.stopPropagation();
});
$(document).click(function () {
flag=$("#test_div");
if(flag.val()==""){
flag.val("---请选择---");
}
jq_checks_select.hide();
});
//$(this).blur(function(){
//jq_checks_select.css("visibility","hidden");
//alert();
//});
}
})

})(jQuery);

html
复制代码 代码如下:
















一个简单的实现下拉框多选的插件可移植性比较好_jquery
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn