怎么设置Jquery 多选下拉列表插件jquery multiselect 的高度?
问题描述:
企业的代码是 .multiselect();
库有用到jquery、jqueryui、jquery multiselect
试过在方法中,加height,minheight,但这个高度改变的是下拉列表的高度,不是控件的高度。
要怎么改变控件本身的高度呢?
控件的源码是
$.widget("ech.multiselect", {
// default options
options: {
header: true,
height: 175,
minWidth: 225,
classes: '',
checkAllText: '全选',
uncheckAllText: '全不选',
noneSelectedText: '请选择',
selectedText: '# 项被选中',
selectedList: 0,
show: null,
hide: null,
autoOpen: false,
multiple: true,
position: {},
appendTo: "body"
},
没有设置控件本身高度的属性。
浏览器用的是IE8.
答
这个插件没有定义控件的高度的配置,控件也没有设置高度,依据内容的高度来确定控件整体高度,你可以给样式添加高度即可。不过还是修改源代码来实现高度控制好点,可以随便配置,而不用统一
2者结合也可以
css覆盖部分,你也可以修改jquery.multiselect.css这个css文件增加style里面的样式
<link rel="stylesheet" type="text/css" href="../jquery.multiselect.css" />
<style>
.ui-multiselect{line-height:30px;height:30px}
</style>
或者修改jquery.multiselect.js文件,增加一个cHeight配置,用来控制控件的高度,找到下面的这句,修改成这样
var button = (this.button = $('<button type="button"><span class="ui-icon ui-icon-triangle-1-s"></span></button>'))
===>改成这样,判断配置了cHeight增加增加style控制高度
var button = (this.button = $('<button type="button"'+(o.cHeight?' style="height:'+o.cHeight+'px"':'')+'><span class="ui-icon ui-icon-triangle-1-s"></span></button>'))
DEMO
$("select").multiselect({cHeight:40});
答
补充说明:
企业用的是jquery multiselect
时期用的是jqueryui selectmenu
就是不知道,怎么设置jquery multiselect的高度。直接加CSS样式不行。感觉可能需要修改源文件。但不知道要怎么修改。
答
options: {
header: true,
height: 175, //改这个试试?