<select style="display: none" name="zjIds" multiple>
<c:forEach items="${zjList}" var="item">
<option value="${item.id }">${item.name }</option>
</c:forEach>
</select>
zjIds 是以逗号分割的字符串如'11,12,13',保存的是id的集合.
zjList 是一个list,属性是id,name.
由于弄了个插件http://www.cnblogs.com/libin-1/p/7061981.html
实现了多选下拉框,Ids的保存,现在不知道怎么回显数值.
首先建议选用一个多选控件,这个是下来选择 体验不太好。
不过当然可以实现,
1).记录一下 onchange事件 如果有改变就记录拼接数组;
2).下来时 考虑在option中添加一个状态标识, 这样体验好一些 ;
然而问题来了,你如何分辨哪些是真的不想选 哪些是真的想多选...
可以在每个选项前面添加一个复选框 让后通过onchange事件来获取你选中了哪几项 让后获取你想要的值 也可以把你想要的值绑定到复选框上面 这样方便获取值
链接里面不是有api了,配置
data 数据源 Array []
<select style="display: none" name="zjIds" id="zjIds" multiple>
<c:forEach items="${zjList}" var="item">
<option value="${item.id }">${item.name }</option>
</c:forEach>
</select>
<script>
$('#zjIds').dropdown({
limitCount: 40,
data:['1','2,'4'],//${item.id }的集合,不要传递其他格式的
multipleMode: 'label',
choice: function () {
console.log(arguments,this);
}
});
</script>
H5的select有个multiple属性好
能解决你的问题