RK
TExpander aceita TActionLink?
Boa noite pessoal, estou tentando utilizar o TExpander (adianti.com.br/framework_files/tutor/index.php?class=FormExpanderVie) porém ao invés de inserir campos, estou inserindo botões.
são vários TExpander seguindo a mesma lógica deste exemplo, no final, insiro eles no form
Utilizei o addFields pois o addField não aceitou, retornando o seguinte erro:
ele monta direitinho (sem utilizar o addField), porém não funciona (é como se tivesse dado um refresh e volta para a mesma página)
Visualmente ele ficou bom, mas não funciona e, por isso, fica a pergunta: TExpander aceita TActionLink?
- <?php
- /////////// tipo
- $expandertipo = new TExpander('Tipo de Produto');
- $expandertipo->setButtonProperty('class', 'btn btn-default');
- $expandertipo->style = 'width:100%';
- /////////// tipo lista
- $actiontipo = new TAction( ['ProdutosTipoList', 'onShow' ] );
- $btntipo = new TActionLink('Listar', $actiontipo, null , 10, '', 'fas:box-open blue');
- $btntipo->class='btn btn-default btn-sm';
- $btntipo->style = "width:100%;";
- /////////// tipo form
- $actiontipof = new TAction( ['ProdutosTipoForm', 'onEdit' ] );
- $btntipof = new TActionLink('Adicionar', $actiontipof, null , 10, '', 'fas:box-open blue');
- $btntipof->class='btn btn-default btn-sm';
- $btntipof->style = "width:100%;";
- //////////////
- $subtabletip = new TTable;
- $subtabletip->style = 'padding:5px; width:100%;';
- $expandertipo->add($subtabletip);
- $subtabletip->addRowSet($btntipo);
- $subtabletip->addRowSet($btntipof);
- //////////////
- ?>
são vários TExpander seguindo a mesma lógica deste exemplo, no final, insiro eles no form
- <?php
- $this->form->addFields([$expandertipo],[$expandercateg],[$expandersubcat],[$expandercampos]);
- ?>
Utilizei o addFields pois o addField não aceitou, retornando o seguinte erro:
Fatal error: Uncaught TypeError: Argument 1 passed to Adianti\Wrapper\BootstrapFormBuilder::addField() must be an instance of Adianti\Widget\Form\AdiantiWidgetInterface, instance of Adianti\Widget\Util\TActionLink given, called in /var/www/html/escondido/app/control/produtos/ProdutosTipoCategoriaSubCamposOpcoesForm.php on line 201 and defined in /var/www/html/escondido/lib/adianti/wrapper/BootstrapFormBuilder.php:237
Stack trace:
#0 /var/www/html/escondido/app/control/produtos/ProdutosTipoCategoriaSubCamposOpcoesForm.php(201): Adianti\Wrapper\BootstrapFormBuilder->addField(Object(Adianti\Widget\Util\TActionLink))
#1 /var/www/html/escondido/lib/adianti/core/AdiantiCoreApplication.php(80): ProdutosTipoCategoriaSubCamposOpcoesForm->__construct(Array)
#2 /var/www/html/escondido/engine.php(27): Adianti\Core\AdiantiCoreApplication::run('1')
#3 /var/www/html/escondido/engine.php(64): TApplication::run()
#4 {main}
thrown in /var/www/html/escondido/lib/adianti/wrapper/BootstrapFormBuilder.php on line 237
ele monta direitinho (sem utilizar o addField), porém não funciona (é como se tivesse dado um refresh e volta para a mesma página)
Visualmente ele ficou bom, mas não funciona e, por isso, fica a pergunta: TExpander aceita TActionLink?
O container principal do texpander tem uma classe "texpander-container" com um javascript vinculado que provoca esse comportamento. Sobreescreva a classe do container deixando somente "dropdown-menu".
Obrigado Nataniel, foi como uma luva...
Só dá vc aqui heim kra.
abs.