Lançado Adianti Framework 8.1!
Clique aqui para saber mais
TExpander aceita TActionLink? Boa noite pessoal, estou tentando utilizar o TExpander (http://adianti.com.br/framework_files/tutor/index.php?class=FormExpanderView) porém ao invés de inserir campos, estou inserindo botões. ...
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.

  1. <?php
  2. ///////////  tipo
  3. $expandertipo = new TExpander('Tipo de Produto');
  4. $expandertipo->setButtonProperty('class''btn btn-default');
  5. $expandertipo->style 'width:100%';
  6. ///////////  tipo lista
  7. $actiontipo = new TAction( ['ProdutosTipoList''onShow' ] );
  8. $btntipo = new TActionLink('Listar'$actiontiponull 10'''fas:box-open blue');
  9. $btntipo->class='btn btn-default btn-sm';
  10. $btntipo->style "width:100%;"
  11. ///////////  tipo form
  12. $actiontipof = new TAction( ['ProdutosTipoForm''onEdit' ] );
  13. $btntipof = new TActionLink('Adicionar'$actiontipofnull 10'''fas:box-open blue');
  14. $btntipof->class='btn btn-default btn-sm';
  15. $btntipof->style "width:100%;";
  16. ////////////// 
  17. $subtabletip = new TTable;
  18. $subtabletip->style 'padding:5px; width:100%;';
  19. $expandertipo->add($subtabletip);
  20. $subtabletip->addRowSet($btntipo);
  21. $subtabletip->addRowSet($btntipof);
  22. //////////////
  23. ?>


são vários TExpander seguindo a mesma lógica deste exemplo, no final, insiro eles no form
  1. <?php
  2. $this->form->addFields([$expandertipo],[$expandercateg],[$expandersubcat],[$expandercampos]);
  3. ?>


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?

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (2)


NR

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".
  1. <?php
  2. $expandertipo->setProperty('class','dropdown-menu');
  3. ?>
RK

Obrigado Nataniel, foi como uma luva...
Só dá vc aqui heim kra.
abs.