select2初始化默认值

之前用select2初始化默认值使用了select2('val','1'),这样做没问题,但只能用在单选上,多选的话,即使将val后面的值改成数组['0','2']这种形式也没用。

<script type="text/javascript">
    $(document).ready(function() {
      var data = [{ id: 0, text: 'aaa' }, { id: 1, text: 'bbb' }, { id: 2, text: 'ccc' }];
      $(".js-example").select2({
        data: data,
        placeholder: "请选择啊"

      });
      $(".js-example").select2('val','1')
    });
</script>

<select class="js-example new-select" multiple="multiple">
</select>

这里写图片描述

如何初始化出多选呢,在stackoverflow找到了答案,那就是用$(".js-example").val(['0','2']).trigger('change')这种方法。

把上面代码中的$(".js-example").select2('val','1')换成$(".js-example").val(['0','2']).trigger('change')就OK了。
这里写图片描述


select2设置默认值

一般jq的select进行赋值就是

$('select').val('3')

实践证明:select2的赋值方法并非如此,

for example:

<!DOCTYPE html>

<html>

<head>

<metacharset="UTF-8">

<title></title>

<linkrel="stylesheet"type="text/css"href="bootstrap.min.css"/>

<linkrel="stylesheet"href="select.min.css"/>

</head>

<body>

<selectid="select1"multiple="multiple"style="width:200px;display:block;margin:300px;">

<option value="0">西瓜</option>

<option value="1">苹果</option>

<option value="2">橘子</option>

</select>

</body>

<scripttype="text/javascript"src="6选项卡/js/jquery-1.11.3.js"></script>

<script src="select2.js"></script>

<script>

$('#select1').select2();

       $('#select1').val(['1']).trigger('change');//这个就是select2的赋值方式。而val里的就是option的value

</script>

</html>

最后的结果就是默认显示为:

这里写图片描述

补充:
可以对select进行复制多个值—可以进行数组的赋值

var arr = ['1','2','3'];
$('#select1').val(arr).trigger('change');
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值