Select2: how to set data after init?

后端 未结 7 2023
醉梦人生
醉梦人生 2021-02-06 22:33

I need to set an array of data after initializing select2. So I want to make something like this:

var select = $(\'#select\').select2({});
select.data([
  {id: 1         


        
7条回答
  •  我寻月下人不归
    2021-02-06 22:59

    You can rerender and trigger the select2

    render select2

    $('.select2').select2({
      placeholder: 'Slect value',
      allowClear: true
    });
    

    after need to change the data data

    let dataChange = [
      {
        id: 0,
        text: 'enhancement'
      },
      {
        id: 1,
        text: 'bug'
      },
      {
        id: 2,
        text: 'duplicate'
      },
      {
        id: 3,
        text: 'invalid'
      },
      {
        id: 4,
        text: 'wontfix'
      }
    ];
    

    rerender the select2

    $('.select2').select2('destroy');
    $('.select2').empty();
    $('.select2').select2({
      placeholder: 'Slect value',
      allowClear: true,
      data: dataChange
    });
    
    

    trigger select2

    $('.select2').trigger('change');
    

    Hope this is the answer for you :3

提交回复
热议问题