jquery multiselect 插件change事件ajax返回数据append后不能正常显示

走在四季 2015-07-10 03:34:03
jsp代码:
<div style="float: left;">大洲:
<select name="example-list" id="my_continent" multiple="multiple" >
<option value="亚洲">亚洲</option>
<option value="北美洲">北美洲</option>
<option value="大洋洲">大洋洲</option>
<option value="拉美洲">拉美洲</option>
<option value="欧洲">欧洲</option>
<option value="非洲">非洲</option>
</select>
</div>
<div style="float: left;">国家:
<select name="example-list" id="my_country" multiple="multiple" >
</select>
</div>

想做一个级联国家查询
javascript代码:
$("#my_continent").change(function(){
var country = $("#my_country");
country.empty();
var continents = $("#my_continent").multiselect("update");
/* var con1 = $("#my_continent").multiselect('getChecked').map(function(){
return this.value;
}).get();
alert(con1);//这样也可以取到值 */
//$("#my_country").multiselect();
var url="${ctx }/user/train-notice!ajaxCountrys.action";
var data="continent="+continents;
$.ajax({
url:url,
data:data,
type:"post",
dataType:'text',
success:function(msg){
var jsons=eval("("+msg+")");
//alert(jsons+"==="+jsons.length);
for ( var int2 = 0; int2 < jsons.length; int2++) {
if(jsons[int2]!=null&&jsons[int2]!=""&&jsons[int2]!=" "){
country.append("<option value="+jsons[int2]+">"+jsons[int2]+"</option>");
}
}
}
});
//$("select").multiselect("refresh");
//$("#my_country").multiselect("refresh");
});


页面效果:

国家不能正常显示。
百度查了下,有人说“看源码,有个refresh方法,每次动态将select里的option跟换,然后调用refresh就ok”;
我试着加了
//$("select").multiselect("refresh");
//$("#my_country").multiselect("refresh");
这两个都没起作用。还望高人指教,谢谢,祝有缘观者工作顺利,身心健康,事事如意,恭喜发财。。。。。。
...全文
947 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wc250025 2017-06-06
https://stackoverflow.com/questions/20401703/bootstrap-multiselect-update-option-list-on-flow $('.multiselect').multiselect('rebuild') 向select添加option之后调一下这个方法。bootstrap-multiselect 0.9.13版本下可用。
回复
baidu_35734202 2016-07-28
楼主最后解决了没?我遇到的问题跟你一模一样
回复
mexican_jacky 2016-04-14
我也遇见了 但是真心没用还在解决中...
回复
走在四季 2015-07-10
有路过的大神没?求你降落,否则。。。好吧,飞的太高了,打不着你。。
回复
走在四季 2015-07-10
http://davidstutz.github.io/bootstrap-multiselect/#getting-started 英文文档,真心看不懂,只好硬着头皮看一点,打开翻译软件一行一行的比对,但好多地方还是弄不太明白。
回复
走在四季 2015-07-10
style="display: none;" 第一个大洲也有,但却是显示的。国家如果把这个去掉,

是这样的效果。
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2015-07-10 03:34
社区公告
暂无公告