[Datatable] Problema pra popular

Boa tarde pessoal,

Poderiam me ajudar ? Estou fazendo alguns testes porem estou tendo problema pra popular a datatable usando json, nao estou sabendo resolver o problema, poderiam me ajudar ou me instruir para que seja possivel localizar a solucao ?

DataTables warning: table id=myTable - Requested unknown parameter '0' for row 0, column 0. For more information about this error, please see http://datatables.net/tn/4

Arquivo Json :

Javascript :slight_smile:

Html :slight_smile:


Link do Rep : https://github.com/Igoralves12/Datatableteste/

Não da para ajudar sem o código

1 curtida

@Fabio_Dos_Reis o codigo esta no repositorio do Git

Caso voce nao consiga me acessar me avise que eu dou uma olhada

Altere essa parte:

columns: [
	{ produto: 'produto.id' },
	{ produto: 'produto.name' },
	{ produto: 'produto.price' },
	{ produto: 'produto.available' }
]

para:

columns: [
	{ produto: 'id' },
	{ produto: 'name' },
	{ produto: 'price' },
	{ produto: 'available' }
]

E veja se funciona.

1 curtida

@Lucas_Camara Nao rolou :frowning: , continua apresentando o mesmo erro

DataTables warning: table id=myTable - Requested unknown parameter '0' for row 0, column 0. For more information about this error, please see http://datatables.net/tn/4

Tive problemas pra preencher também, fui arriscar tentar jogar a query no banco e o problema era a query mesmo. Faz um teste, vê se tá tudo ok.

Obs, posta o trecho do código pra a gente, datatable e tal. É mais fácil pra vc e pra nós, a chance de alguém te ajudar é muito maior qnd vc posta o código ao invés do link.

1 curtida

@rodriguesabner Justo vou tentar.

Vou alterar o primeiro post

up :frowning:

E aí, vamos lá. não sei se você conseguiu, mas se alguém precisar disso algum dia, ta aqui:

Obs: Estou me baseando pelo código do @igoralves, então só vou mencionar os arquivos que realmente importam

Link: https://github.com/Igoralves12/Datatableteste/

index.html:

<html>
<head>
    <script type="text/javascript" src="js/jquery.js"></script>
    <script type="text/javascript" src="js/util.js"></script>
    <link rel="stylesheet" type="text/css" href="jquery.dataTables.min.css" />
    <script type="text/javascript" src="data/datatables.min.js"></script>

    <title>Produtos</title>
</head>
<body>
    <table id="index-produtos" class="display">
        <thead>
            <tr>
                <th>ID</th>
                <th>Produto</th>
                <th>Preço</th>
                <th>Status</th>
            </tr>
        </thead>
    </table>
</body>
</html>

js/util.js:

$(document).ready(function () {
    $("#index-produtos").DataTable({
        "ajax": "json/produtos.json",
        columns: [
            { "data": 'id' },
            { "data": 'name' },
            { "data": 'price' },
            { "data": 'available' }
        ]
    }
    );
});

OK, o JSON eu não vou postar todo, só o começo pra vcs terem um norte:

OBS: antes estava como produto, eu mudei pra data

json/produtos.json

{
   "data": [
      {
         "id": 1,
         "name": "Jaleco",
         "price": "R$ 999,99",
         "available": true
      },
      {
         "id": 2,
         "name": "Avental",
         "price": "R$ 999,99",
         "available": true
      },
      ............................

Outra observação, se você for rodar o index.html apenas clicando nele, vai dar esse erro:

Access to XMLHttpRequest at 'file:///…' from origin 'null' has been blocked by CORS policy.....

Pra consertar isso, você precisa ter o Xampp, Wamp ou qualquer um de sua preferência e rodar no localhost ou ip da maquina.


P: Baixei o XAMPP, como faço pra rodar o arquivo?
R: Pega a pasta do projeto, vai no diretório que você instalou o XAMPP (no meu caso está em C:/xampp) e vai na pasta htdocs. Só jogar a pasta lá dentro. Pra rodar você vai no no navegador e coloca: localhost/suapasta, só trocar o nome de ‘suapasta’, pra o nome da sua pasta de verdade.

1 curtida

Fala ae Abner tudo bem ??

Sim via vs code eu consigo simular um servidor e fazer as request http

1 curtida

Tudo certo e você?

Boa, tem essa opção também!