jQuery MultiSelect 如何设置多选框的默认选中项

4567人阅读 评论(0) 收藏 举报
分类:
<script src="../js/jquery-1.3.2.js" type="text/javascript"></script>
<script src="../js/jquery.multiSelect.js" type="text/javascript"></script>
<link href="css/jquery.multiSelect.css" rel="stylesheet" type="text/css" />
我用的是jQuery MultiSelect 插件下拉多选框,
Select:
        <select id="control_7" name="control_7[]" multiple="multiple" size="5">
            <option value="">请选择</option>
            <option value="1">性病商务通</option>
            <option value="2">商务通</option>
            <option value="3">QQ</option>
            <option value="4">性病QQ</option>
            <option value="5">企业QQ</option>
            <option value="6">电话</option>
            <option value="7">性病电话</option>
            <option value="8">微信</option>
            <option value="9">竞D1</option>
            <option value="10">竞D2</option>
            <option value="11">竞D3</option>
            <option value="12">竞D4</option>
            <option value="13">400电话</option>
            <option value="14">挂号网</option>
        </select>
jQuery MultiSelect 插件:

.......................

if(jQuery) (function($){

//渲染HTML的一个单一的选项
function renderOption(id, option)
{
var html='<label><input type="checkbox" name="' + id + '[]" value="' + option.value + '"';
if( option.selected ){
html+='checked="checked"';
}
html += ' />' + option.text + '</label>';
return html;
}

// 渲染选项/的HTML optgroups
function renderOptions(id, options, o)
{
var html = "";
for(var i = 0; i < options.length; i++) {
if(options[i].optgroup) {
html += '<label class="optGroup">';
if(o.optGroupSelectable) {
html += '<input type="checkbox" class="optGroup"/>' + options[i].optgroup;

}
else {
html += options[i].optgroup;
}

html += '</label><div class="optGroupContainer">';
html += renderOptions(id, options[i].options, o);
html += '</div>';
}
else {
html += renderOption(id, options[i]);
}
}
return html;
}





我提交的时候都变没了,就一个了,我想要的是我选中几个默认选中就是几个。



在调用这个插件前用jquery设置optin的selected属性

JavaScript code
?
1
2
3
4
5
6
7
var v='1,2,3'//这个为保存的值,自己从数据库读取来赋值给v变量
v=','+v+',';//添加分隔符号,好indexOf进行比较
var arr=v.split(',');
$('#control_7 option').each(function(){
  if(v.indexOf(','+this.value+',')!=-1)this.selected=true;
});
//再调用插件初始化select对象

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:414834次
    • 积分:5247
    • 等级:
    • 排名:第5198名
    • 原创:105篇
    • 转载:120篇
    • 译文:0篇
    • 评论:30条
    博客专栏
    最新评论