1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Plugin Jquery Datatables

Olá Pessoal,

Estou precisando construir uma tabela de orçamento que além de permitir a visualização dos itens já inseridos, também permite a inserção na própria tabela. Ou seja, como em uma tabela de excel vc vai adicionando na hora e no final apenas clica em salvar.

Até aí tudo bem, estou construindo uma utilizando o plugin http://datatables.net/ que já tem algumas soluções prontas como é o caso de ter subitens: http://datatables.net/examples/api/row_details.html

Então no meu caso, quando o usuário clica em uma td, ele vira um input, o usuário digita e quando ele tira o foco do input, volta a ser uma td normal. Tudo isso já está funcionando a mil maravilhas.

O problema é que eu preciso pegar todos os dados da tabela na hora de salvar(inclusive dos sub-itens) que se não tiver expandido, eles simplesmente não existem no DOM.

Vi que existem callbacks quando você cria a tabela, mas eu precisaria puxar esses dados depois, apenas quando o usuário clicar Salvar.

Talvez ficou um pouco confuso então vou subir uma foto pra vocês entenderem melhor:

https://www.filepicker.io/api/file/IFUdZZl1Sryj3qirEKwj

Lembrando que hoje faço da seguinte maneira:

$(document).ready(function () {
            table = $('#example').DataTable({
                "ajax": "json/lista.txt",
                "columns": [
                    {
                        "class": 'details-control',
                        "orderable": false,
                        "data": null,
                        "defaultContent": ''
                    },
                    { "data": "item" },
                    { "data": "fase" },
                    { "data": "valor", "sClass": "valuerow" },
                    { "data": "dataLancamento", "sClass": "daterow" },
                    { "data": "parcelas", "sClass": "qtdParcela" },
                    { "data": "idOrcamento", "visible": "false", "sClass": "idrow" }
                ],
                "order": [[1, 'asc']],
                "fnInitComplete": function (oSettings, json) {
                    //console.log(json);
                    //console.log(oSettings);
                    formatTable(json);
                }
            });

Ou seja, eu precisaria acessar essa variável table em qualquer momento. Alguma ideia? Muito obrigado

  • Olá @Rafael, eu fiz isso utilizando marcadores simples, quando eu adicionava, alterava ou excluia algo eu mantinha as informações na tabela (Ocultada ou com alguma mudança no css), então adicionava classes em cada uma de acordo com cada alteração e no jquery utilizando $post eu enviava para o server cada uma das alterações que eu havia marcado!

    Mickdark   26 de ago de 2014
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags jquery javascript ou faça a sua própria pergunta.