哪位用过 select2,如何 设置初始显示
查了很多资料,都写的是 用如下方式设置初始显示值:
$("#ddd").select2("val", 显示值);
但上述方式,我怎么试,也不行。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
查了很多资料,都写的是 用如下方式设置初始显示值:
$("#ddd").select2("val", 显示值);
但上述方式,我怎么试,也不行。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(16)
回复
原文链接:https://jsnwork.kiiuo.com/archives/1583/jquery-%E5%A5%BD%E7%94%A8%E7%9A%84%E5%A4%96%E6%8E%9B-select2%E3%80%82%E4%BB%8B%E7%B4%B9ajax%E6%96%B9%E6%B3%95%E3%80%82/
解决方案:/ Jason 因為原本資料不存在,所以會被加入,其他則僅是替換 var option = new Option(ele.text, ele.id, true, true); $user.append(option).trigger('change');
ajax异步加载数据无法赋值的原因在于select2的option是在点击select框时请求数据的,此时数据还没有加载上,无法绑定到对应的dom上,解决办法是先把异步的数据加载上,然后调用select2的赋值方法
动态加载数据源的情况,官网赋值方法无效的,使用如下代码试试:
$('#office').html('<option value="' + value + '">' +name+ '</option>').trigger("change");
楼主的问题解决吗?select2远程加载数据显示默认值
回复
必须会啊,你是java开发么?
回复
贴个代码~
回复
自己百度,自己尝试
回复
@沈春钟 : 你用jquery的ajax函数拿到所有数据并格式化成select2支持的格式,比如:var data_=[{id:"1",text:"a"},{id:"2",text:"b"},{id:3,text:"c"}]然后select2({data:data_}).val(["1","2"]).trigger("change");也可以初始id=1和id=2的选中为选中状态
回复
我这种方法适合下拉框数据量小的情况,你要是有个几万条估计也不会用下拉框了,所以一般情况下也可以解决你的问题。
引用来自“岽茗”的评论
引用来自“alan-”的评论
哈哈,多谢回答
它官网有介绍
我也遇到这个问题了,用ajax加载的数据不能默认选中几个选项。我的解决方法是不用select2,换bootstrap.select,简单的一逼,分分钟搞定。
引用来自“alan-”的评论