Загрузка данных json после успешной отправки ajax - PullRequest
0 голосов
/ 28 мая 2019

enter image description here я пытаюсь создать форму тегов с помощью textextjs но у меня есть проблема с AJAX для вызова новых данных после другого успеха AJAX отправить

это мой код для вызова json

var tagload =   $('#textarea')
    .textext({
        plugins : 'autocomplete filter tags ajax',
        ajax : {                
            url: "<?= base_url() ?>admin_ajx/tags_ajx/data_tags",
            dataType : 'json',
            cacheResults : true
        }
    });

и это мой код для отправки новых данных в json

        $(document).ready(function(){  
           $(".save_new_tags").click(function(){
                var data = $('.add_new_tags').serialize();
                $.ajax({
                            type: 'POST',
                            url: "<?= base_url() ?>admin_ajx/tags_ajx/add_tags",
                            data: data,
                            success: function() {                                                                             
                            $(".add_new_tags")[0].reset();
                            alert("Post Success!");                                
                            tagload.ajax.reload();
                        }                                    
                    });
                });
            });

как загрузить новые данные, после успеха отправьте новые данные

я думаю, что проблема здесь cacheResults: true

я все еще ищу решение

1 Ответ

0 голосов
/ 28 мая 2019

Нет свойства AJAX в возвращенном выборе jQuery в tagload.

В примере со свойством cacheResults, установленным на true, предполагается, что сервер возвращает все возможные результаты .

Поскольку вы разрешаете обновлять возможные значения, ситуация больше не возникает.

Удаление опции cacheResults или установка ее на false должна иметь вашобновлены предложения тегов.

Вы также можете оставить для параметра cacheResults значение true и обновить предложения для экземпляра Textext после извлечения тегов с помощью $.ajax.

var opts = {                
  url: "<?= base_url() ?>admin_ajx/tags_ajx/data_tags",
  dataType : 'json',
  cacheResults : true
}

var tagload = $('#textarea')
    .textext({
      plugins : 'autocomplete filter tags ajax',
      ajax : opts
    });

$(document).ready(function(){  
   $(".save_new_tags").click(function() {
     //...

      $.ajax(opts).done(function(suggestions) {
         var textExts = $('#textarea').textext()[0]
         textExts.ajax()._suggestions = suggestions
     });
  });
});
.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...