EC
Bloqueio de campos (TDBCombo)
Boa tarde! O bloqueio de campos não funciona para o TDBCombo?
TEntry::disableField('form_MecOrcamento', 'cliente_id');
TDBCombo::disableField('form_MecOrcamento', 'mec_desconto_id');
TEntry::disableField('form_MecOrcamento', 'cliente_id');
TDBCombo::disableField('form_MecOrcamento', 'mec_desconto_id');
use
ops
use $id->setEditable(false);
Obrigado Marcelo, mas sabe me dizer como referencio um objeto, no caso o TDBCombo em outra function, por exemplo, preciso impedir a edição neste objeto assim que o function onSaveDetail for executada. Funcionou para o TEntry...
Tenta
Marcelo, usando a implementação informada, gerou o seguinte erro:
Fatal error: Uncaught Error: Call to a member function setEditable() on string in E:wamp64wwwmultimecappcontrolorcamentoMecOrcamentoForm.class.php on line 243
Estou fazendo algo errado ou existe alguma outra forma?
Agradeço a disposição.
Eduardo,
De fato eu me enganei. O disabeleField funciona em algumas situações, veja abaixo;:
Este combo se não usar "enabledSearch" ele é um select normal.
Quando vc ativa "enableSearch" ele passa ser um "select2", e deixa de ser um select.
Pode ser isso que erteja ocoreendo.
Usando um Comob puro, que no fundo é um simples select, o TDBCombo::disableedField funciona.
Teste os 2 e inspecione e poderá ver a diferença;
Marcelo, realmente... comentei a linha $mec_desconto_id->enableSearch(); e o código funcionou... então com o enableSearch ativado o bloqueio não funciona, de forma alguma? É um recurso tão bom... rs
Eduardo
A questão que o "select2" não é um componente do form, ele é montado a partir de "css".
Eu não tentei, mas tente pegar o "id" do <span> principal do "select2" e injete via javscrit, por exemplo:
TScript::create("$(#id-select).attr('readonly','readonly')");</span>