第一步:当然multiselect 所要支持的样式和js文件是呀引入,毫无疑问jQuery也是需要,我是在1.10.2版本下进行的
<script src="${cp }/resource/js/lib/jquery/jquery.multiselect.js" type ="text/javascript"></script>
<script src="${cp }/resource/js/lib/jquery/jquery.multiselect.filter.js" type ="text/javascript"></script>
<link rel="stylesheet" href="${cp }/resource/css/jquery/jquery.multiselect.css" type="text/css"></link>
<link rel="stylesheet" href="${cp }/resource/css/jquery/jquery.multiselect.filter.css" type="text/css"></link>
第二步:页面加select
<script src="${cp }/resource/js/lib/jquery/jquery.multiselect.js" type ="text/javascript"></script>
<script src="${cp }/resource/js/lib/jquery/jquery.multiselect.filter.js" type ="text/javascript"></script>
<link rel="stylesheet" href="${cp }/resource/css/jquery/jquery.multiselect.css" type="text/css"></link>
<link rel="stylesheet" href="${cp }/resource/css/jquery/jquery.multiselect.filter.css" type="text/css"></link>
正常些select,注意multiple属性
第三步 :初始化
//初始化下拉框
$("#salesBackFactory_repairType").multiselect({
noneSelectedText: "",
checkAllText: "全选",
uncheckAllText: '全不选'
});
第四步:获取选中值
var typeValues = $("#salesBackFactory_repairType").multiselect("getMultiSelectValues");
到这步的时候就是对multiselect进行了下改造,各位看好了哟,自定义函数 getMultiSelectValues
getMultiSelectValues:function(){
var o = this.options
var $inputs = this.inputs;
var $checked = $inputs.filter(':checked');
var numChecked = $checked.length;
var value;
if(numChecked === 0) {
value = "";
}else{
value = $checked.map(function(){return $(this).val(); }).get().join(', ');
}
return value;
},
第五:大功告成
如果出现问题可以继续交流
后面想起来一些问题,需要补充下。。。
看网上其他人使用自定义返回值得方式有些问题,例如下面的情况,下面的是有问题的:
如果一个也没出现多格多选下拉框,这种方式就存在问题,获取的值是一样的,遇到这样的问题,请转回去看第四步
此处已结束。