Почему этот динамически добавленный выбор ввода с использованием AJAX не работает? - PullRequest
0 голосов
/ 17 мая 2018

Я получаю поля формы в определении HTML, используя подобный вызов ajax, используя Jquery в представлении codeigniter.

     function getaddinfo(){
          var modtabgrp = $("#modtabgrp").val();
             $.ajax({
                url:base_url+"Base/gridaddfetch?modtabgrp="+modtabgrp,
                async:false,
                cache:false,
                success :function(data) {
                $('#liveform').append(data);

              },
          }); 
       }

Теперь этот ответ содержит входные данные на основе плагина select2, я могу правильно отобразить все входные данныено входы select2 не включаются.Функция включения входа на основе плагина select2 при нажатии на значок добавления выглядит следующим образом:

      $("#addicon").click(function(){
          $('#stateid').select2('val','2');
          $('#tabgropdropdown').select2('val','1');
        }

Также я должен убедиться, что перед нажатием кнопки #addicon Add, форма загружается и внедряется в дерево DOM.Тогда почему элементы #stateid и #tabgropdropdown, доступные в #liveform Div, не включаются?

Другими словами, почему событие, связанное с событием кнопки добавления, не связывается с динамически добавляемыми элементами ввода?

1 Ответ

0 голосов
/ 17 мая 2018

Здесь вам необходимо повторно инициализировать select2 () для этого входа после вызова ajax.

function getaddinfo(){
          var modtabgrp = $("#modtabgrp").val();
             $.ajax({
                url:base_url+"Base/gridaddfetch?modtabgrp="+modtabgrp,
                async:false,
                cache:false,
                success :function(data) {
                $('#liveform').append(data);
                $('#stateid').select2();
                $('#tabgropdropdown').select2();  
              },
          }); 
}
...