Как установить значение в Select2, используя данные базы данных в codeigniter - PullRequest
0 голосов
/ 14 января 2020

Мне действительно нужна помощь по моей проблеме, я пытаюсь установить значение в моем select2, используя данные, которые я получил в моей базе данных, используя ajax.

, вот мое мнение в select2

  <select multiple id="multiple_assigned" style="width:300px">
          <option value="1">Test1</option>
          <option value="2">Test2</option>
          <option value="3">Test3</option>
          <option value="4">Test4</option>
          <option value="5">Test5</option>
          <option value="6">Test6</option>
          <option value="7">Test7</option>
          <option value="8">Test8</option>
      </select>

данные выглядят так:

0: {users_id: "1"}
1: {users_id: "2"}
2: {users_id: "3"}
3: {users_id: "4"}
4: {users_id: "5"}
5: {users_id: "6"}

вот мой ajax выглядит так:

        $.ajax({
            url: url,
            type: "GET",
            dataType: "JSON",
            data: $('#form').serialize(),
            success: function(data) {

                for(i=0; i<data.length; i++){
                  $('#multiple_assigned').val(data[i]);
                }

            },
            error: function(jqXHR, textStatus, errorThrown) {
                alert('Error adding / update data');
            }
        });

Заранее спасибо. Мне просто нужно показать все данные, которые я получил через мою базу данных в select2. Любой ответ будет очень признателен, спасибо.

Ответы [ 2 ]

0 голосов
/ 14 января 2020
    #use css/select2.min.css
    #use js/select2.full.min.js
    # then add class="select2"
    #Example:
    <select class="select2" multiple>
              <option value="1">Test1</option>
              <option value="2">Test2</option>
              <option value="3">Test3</option>
              <option value="4">Test4</option>
              <option value="5">Test5</option>
              <option value="6">Test6</option>
              <option value="7">Test7</option>
              <option value="8">Test8</option>
    </select>
#then use this script
<script>
    $(function() {
        //Initialize Select2 Elements
        $('.select2').select2()

    })
</script>
0 голосов
/ 14 января 2020

я уже получил ответ.

            success: function(data) {
                //if success close modal and reload ajax table
                var selectedValues = new Array();
                for(i=0; i<data.length; i++){
                    selectedValues[i] =   data[i]['users_id']
                    $('#multiple_assigned').val(selectedValues);
                    }
                $("#multiple_assigned").select2();

            },

мне просто нужно объявить массив, затем l oop через него.

...