Динамическое создание тегов select2 внутри sweetalert2 - PullRequest
1 голос
/ 05 марта 2020

Я пытаюсь создать теги Select2 внутри SweetAlert. Не слишком уверен, что я делаю неправильно, но в настоящее время созданная опция - '+value+'

Я не вызываю функцию в нужном месте?

Я добавил onRender, но все равно не повезло. То же самое. Обновлено на Рендер:

  Swal.fire({

    title: '<strong>DIOR</strong>',
    icon: 'info',
    html:
      'Change tags:<br /> <br />' +
      '<select class="form-control select2 select2-multiple selectTags" id="selectTags" multiple="multiple"><option>Zero tag</option>' +
      function () {
        $.each(tags[0], function (index, value) {
          // var mySelect = $("#selectTags").append('<option value="' + index + '">' + value + '</option>');
          // mySelect.trigger("change");

          console.log("html: " + value);
          //$("#selectTags").select2('data', { id: index, text: value });
        })
      },
    showCloseButton: true,
    showCancelButton: true,
    focusConfirm: false,
    allowOutsideClick: false,
    confirmButtonText:
      '<div class="d-flex align-items-center saveTags" id="saveTags"> <i class="dripicons-checkmark mr-2" style = "font-size: 20px" ></i > Save tags!</div > ',

    cancelButtonText:
      '<div class="d-flex align-items-center"><i class="dripicons-cross mr-2" style="font-size: 20px"></i> Cancel</div>',
    cancelButtonAriaLabel: 'Thumbs down',
    onRender: function () {
      $.each(tags[0], function (index, value) {
        var mySelect = $("#selectTags").append('<option value="' + index + '">' + value + '</option>');
        mySelect.trigger("change");

        console.log("onRender: " + value);
        $("#selectTags").select2('data', { id: index, text: value });
      })
    },
    onOpen: function () { $("#selectTags").select2({ tags: true }); console.log($("#selectTags").val()); }
  }).then((result) => {
    if (result.value) {
      console.log("onOpen: " + $("#selectTags").val());
      selected = $("#selectTags").val(); // array of selected tags
      //storing tags code below
      //
      /////////////////////////
      Swal.fire(
        'Saved!',
        'Selected tags were stored in the database.',
        'success'
      )
    }
  })
}
...