HT
EditAction do datagrid não funciona
Estou tentando fazer funcionar o setEditAction no datagrid, mas não esta dando certo. Quando é exibido a tela que vou clicar em cima para editar, o valor desaparece e não abre o input para editar o valor. segue o código para se possível alguém ajudar.
- <?php
- $this->datagrid = new TDataGrid;
- $this->datagrid = new BootstrapDatagridWrapper($this->datagrid);
- $this->datagrid->style = "margin-bottom: 10px";
- $this->datagrid->disableDefaultClick();
- $codigo = new TDataGridColumn('prd_codigo', 'Código', 'center', 80);
- $descricao = new TDataGridColumn('prd_descricao', 'Descrição', 'left', 300);
- $fabricante = new TDataGridColumn('prd_fabricante', 'Fabricante', 'left', 200);
- $quantidade = new TDataGridColumn('prd_quantidade', 'Quantidade', 'right', 30);
- $valor = new TDataGridColumn('prd_valor','Valor', 'right', 100);
- $desconto = new TDataGridColumn('prd_desconto','Desc. %', 'right', 80);
- $subTotal = new TDataGridColumn('subTotal', 'SubTotal', 'right', 100);
- $this->datagrid->addColumn($codigo);
- $this->datagrid->addColumn($descricao);
- $this->datagrid->addColumn($fabricante);
- $this->datagrid->addColumn($quantidade);
- $this->datagrid->addColumn($valor);
- $this->datagrid->addColumn($desconto);
- $this->datagrid->addColumn($subTotal);
- $editaction = new TDataGridAction(array($this, 'onEdit'));
- $editaction->setField('prd_quantidade');
- $quantidade->setEditAction($editaction);
- $this->datagrid->createModel();
- ?>
Olá Herbety. O parâmetro passado no setField tem que ser o id do seu registro.
Problema parecido:
https://www.adianti.com.br/forum/pt/view_2825?edicao-inline-no-datagrid
Nataniel Rabaioli, obrigado, seu link me ajudou. Resolvido o problema.
Para quem tiver o mesmo problema, a solução é verificar se não esta colocando um form dentro do outro, pois o EditAction já tem um dentro dele.
Nataniel Rabaioli, como faço para manipular o campo de edição, podendo mudar tamanho e etc, já que ele é dinâmico?