Javascript - Добавить данные в таблицу из Api - PullRequest
0 голосов
/ 19 января 2019

Я получаю данные из API с помощью Javascript.Я хочу перенести данные в таблицу, но не смог.

Я беру данные, но не знаю, как поместить их в таблицу.

Мойкод

function tablo_getir() {
var dt = $('#base-style').DataTable();  
dt.clear().row();
    var apirun=getApi("/api/campaigns/");
     $.each(apirun, function(k, v) {
        dt.row.add(['<button class="btn btn-inverse" id="'+v.id+'" href="#" data-toggle="modal" data-target="#subeDetay" title="Detay"><i class="icofont icofont-eye-alt"></i></button>',
        v.id,
        v.name,               
        '<button class="btn btn-success" id="'+v.id+'" href="#" data-toggle="modal" data-target="#subeDuzenle" title="Düzenle"><i class="ti-pencil-alt"></i></button><button class="btn btn-danger" id="'+v.id+'" title="Sil"href="#" data-toggle="modal" data-target="#delete"><i class="ti-trash"></i></button>']).draw(false);
        }); }

Моя функция getApi:

function getApi (url,request) {
$('#alertSuccess').fadeOut('slow');
var response = "";
$.ajax({
        url: apiUrl+url+tokenim,
        type: 'get',
        async: false,
        headers: {
                'Content-Type': 'application/json',
        },
        dataType: 'json',            
        success: function (data) {
                console.info(data);
                if(data.statusCode!=200) {
                        alert(data.message);
                        return false;
                } else {
                        response=data;
                }
        },
        error: function(data){
            $('#alertDanger').fadeIn('slow');
            $('#alertDanger .alert').text("Api çalışmasında hata oluştu");
            $('#alertDanger').fadeOut(5000);
        }
});
return response; }

Поступающие данные: https://hizliresim.com/V90NlZ

Я получаю неопределенную ошибку при загрузке веб-страницы.В то же время мои данные не поступают в таблицу.

1 Ответ

0 голосов
/ 19 января 2019

Ваша наиболее вероятная проблема заключается в том, что вы забыли вызвать метод DataTables draw после добавления строки в таблицу.Вы можете попробовать изменить свой код, например, так:

dt.row.add(['<button class="btn btn-inverse" id="'+v.id+'" href="#" data-toggle="modal" data-target="#subeDetay" title="Detay"><i class="icofont icofont-eye-alt"></i></button>',
    v.id,
    v.name,               
    '<button class="btn btn-success" id="'+v.id+'" href="#" data-toggle="modal" data-target="#subeDuzenle" title="Düzenle"><i class="ti-pencil-alt"></i></button><button class="btn btn-danger" id="'+v.id+'" title="Sil"href="#" data-toggle="modal" data-target="#delete"><i class="ti-trash"></i></button>']).draw(false);
    }).draw();

Вот ссылка о том, как добавить новые строки в DataTable таблицы.

Также читайте оdraw функция здесь .Он имеет один входной параметр, и в зависимости от этого таблица будет перерисовываться по-разному.Исходя из вашего вопроса, я не могу решить, какой параметр вы должны использовать для таблицы draw.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...