Lançado Adianti Framework 7.6!
Clique aqui para saber mais
MASCARAS CPF/CNPJ Olá, estou usando TElement está perfeito ...
AR
MASCARAS CPF/CNPJ  
Olá, estou usando TElement está perfeito

  1. <?php 
  2. $script = new TElement('script'); 
  3. $script->type 'text/javascript'
  4. $javascript "$('select[name="cliente_pessoa"]').change(function(event){ 
  5. var cliente_pessoa = $('select[name="cliente_pessoa"]').val(); 
  6. if(cliente_pessoa == 'F') { 
  7. $('input[name="cliente_cpf_cnpj"]').val(''); 
  8. $('input[name="cliente_cpf_cnpj"]').attr({onkeypress:'return tentry_mask(this,event,"999.999.999-99")'}); 
  9. if(cliente_pessoa == 'J') { 
  10. $('input[name="cliente_cpf_cnpj"]').val(''); 
  11. $('input[name="cliente_cpf_cnpj"]').attr({onkeypress:'return tentry_mask(this,event,"99.999.999/9999-99")'}); 
  12. }); 
  13. "
  14. $script->add($javascript); 
  15. parent::add($script); 
  16. ?>


Só que no onEdit, o campo é editado sem a mascara, aí preciso usar uma função Formatar_Cpf_Cnpj, que edita com uma mascara, só que a mascara não é fixa como $script->type = 'text/javascript';. Tem uma solução pra isso ?

  1. <?php  
  2. $object->cliente_cpf_cnpj $object->formatar_Cpf_Cnpj
  3. ?>


Obrigado.


Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos


Meu negócio pronto Quero me inscrever agora!

Comentários (2)


RL

Oi Adriano, no me caso eu tenho uma classe de formatação, veja se isso te ajuda de alguma maneira:

  1. <?php
  2. /*=================================================================================================================
  3.  TFmt:cic
  4. -------------------------------------------------------------------------------------------------------------------
  5.  Formata o CIC conforme o tamanho ou o tipo de pessoa (F,J)
  6. =================================================================================================================*/
  7.   public static function cic(
  8.     $cic       // 1 CIC que será formatado ou não. str
  9.     $tip null// 2 Tipo de pessoa................ str,log
  10.   {
  11.     $cic self::limpa($cic);
  12.     if ($tip === true)
  13.       return $cic
  14.     
  15.     switch ($tip) {
  16.       case 'F':
  17.       case 'f'$ret self::masc($cic,'###.###.###-##')    ; break;
  18.       case 'J':
  19.       case 'j'$ret self::masc($cic,'##.###.###/####-##'); break;
  20.       default:
  21.         $tam strlen($cic);
  22.         switch ($tam) {
  23.           case 11$ret self::masc($cic,'###.###.###-##')    ; break;
  24.           case 14$ret self::masc($cic,'##.###.###/####-##'); break;
  25.           default: $ret $cic                                 ; break;
  26.         }
  27.         break;
  28.     }
  29.     return $ret;
  30.   }
  31. ?>


O método "masc" é usado por outros métodos da classe (telefone,cep, etc), então ficou assim:

  1. <?php
  2. /*=================================================================================================================
  3.  TFmt:masc
  4. -------------------------------------------------------------------------------------------------------------------
  5.  Formata um valor com uma máscara definida
  6. =================================================================================================================*/
  7.   public static function masc(
  8.     $val// 1 Valor que será formatado. str
  9.     $str// 2 String da máscara........ str
  10.   {
  11.     $ret '';
  12.     $k   0;
  13.     $tam strlen($val);
  14.     for ($i 0$i <= strlen($str) -1$i++) {
  15.       if ($str[$i] == '#') {
  16.         if ($k >= $tam)
  17.           break;
  18.         $ret.= TGen::def($val[$k],$val[$k]);
  19.         $k++; }
  20.       else
  21.         $ret.= TGen::def($str[$i],$str[$i]);
  22.     }
  23.     return $ret;
  24.   }
  25. ?>


Já no método "onEdit" eu estou formatando dessa maneira:

  1. <?php
  2.         (...)
  3.         $object = new Pessoa($key);
  4.         $object->nr_cic TFmt::cic($object->nr_cic);
  5.         (...)
  6.         $this->form->setData($object);
  7. ?>
AR

Olá Rod, obrigado por ter me respondido. No caso do "onEdit" quando é feita a edição(alteração) as máscaras ficam fixas ou usuário pode apagar as máscaras ?