EXTJS - Comunidade brasileira da biblioteca EXTJS
Setembro 09, 2010, 21:28:25 *
Bem-vindo, Visitante. Por favor faça o Login ou Registro.
Perdeu o seu email de activação?

Login com nome de usuário, senha e duração da sessão
Notícias: 23/03 - Lançado o Ext Designer 1.0! Faça já o download
 
   Home   Ajuda Pesquisa Login Registrar  
Faça uma doação e contribua para a
evolução desta comunidade. Saiba mais...
Páginas: [1]
  Imprimir  
Autor Tópico: [Resolvido] Máscara errada ao editar em InputTextMask  (Lida 123 vezes)
0 Membros e 1 Visitante estão vendo este tópico.
FkrZiM
Iniciante
*

Karma: +1/-0
Offline Offline

Sexo: Masculino
Mensagens: 45


Ver Perfil
« : Fevereiro 05, 2010, 12:49:45 »

Boa tarde pessoal.
Uso o plugin InputTextMask no textfield para formatar uma máscara em mês/ano (99/9999).
Preencho todos os outros campos menos este de mês/ano e salvo.
Depois, clico em editar, e este campo aparece com o "markinvalid" com a mensagem de validação. Ex.: "Formato deve ser MM/AAAA."
Clico no campo para preencher o mês/ano, mas quando vou preencher apenas permite que digite 2 números. Ex.: "02" (que seria o mês Fevereiro)
Se eu apagar o que digitei, clicar em outro campo, e depois voltar para o campo da máscara mês/ano, ele seta a máscara no campo e aí sim dá para digitar o mês/ano. Ex.: "02/2010"
Alguém já passou ou passa pelo mesmo problema?
Sei que não é próprio do ext, mas venho aqui pedir ajuda.
Obrigado Sorridente
« Última modificação: Fevereiro 10, 2010, 08:28:15 por FkrZiM » Registrado
FranklinJavier
Iniciante
*

Karma: +1/-0
Offline Offline

Sexo: Masculino
Mensagens: 145


HTML 5, que venha!

franklin_net@hotmail.com
Ver Perfil Email
« Responder #1 : Fevereiro 08, 2010, 16:01:05 »

posta o código!
Registrado



Franklin Javier Gonzalez
Ext Js
-Interface Designer
FkrZiM
Iniciante
*

Karma: +1/-0
Offline Offline

Sexo: Masculino
Mensagens: 45


Ver Perfil
« Responder #2 : Fevereiro 09, 2010, 07:16:36 »

posta o código!

não tem segredo.. mas então ta aí:
Código:
this.moradorDesde = new Ext.form.TextField({
  id   : 'id-mora-desde'+this.src
  ,fieldLabel : 'Morador desde'
  ,name : 'MORA_DESDE'
  ,width : 200
  ,disabled : true
  ,allowBlank : true
  ,plugins: [new Ext.ux.InputTextMask('99/9999', true)]
  ,validator: function(v){
    v = String(v);
    if(v == '')
      return true;
    
    value = v.split("/");
    
    if(value[0] > 12){
      return 'O mês é inválido.';
    }
    if(value[0] == '00'){
      return 'O mês é inválido.';
    }
    if(value[0] == null){
      return true;
    }

    return /[0-1]{1}[0-9]{1}\/[0-9]{4}/.test(v) ? true : 'Formato deve ser MM/AAAA.';
    }
});

Essa é uma correção que estou fazendo no sistema. E o que consegui sacar, e talvez possa ser esse o problema..
Aconteceu este erro em uma base que já estava em uso. E este campo, quando não é digitado nada e salvo o cadastro, nesta base pelo jeito gravava como vazio, ao invés de nulo. E na base nova, está gravando como nulo.
O que acontece é que quando vou editar um registro em que este campo foi gravado como vazio, ele dá erro na máscara e permite digitar somente dois números. Tem que digitar, apagar o campo, selecionar em qualquer outro campo e depois mudar para este campo, aí a máscara vai estar certa e permitir digitar o mês/ano corretamente.
Quando edito um registro em que este campo foi gravado como nulo, não acontece este erro.
« Última modificação: Fevereiro 09, 2010, 07:18:43 por FkrZiM » Registrado
FkrZiM
Iniciante
*

Karma: +1/-0
Offline Offline

Sexo: Masculino
Mensagens: 45


Ver Perfil
« Responder #3 : Fevereiro 10, 2010, 08:28:01 »

Bom..
como estava fazendo testes em uma base existente importada, o campo vinha como vazio mesmo, ao invés de nulo.
Era esse erro mesmo.
Valeu.
Registrado
Páginas: [1]
  Imprimir  
 
Ir para:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC XHTML 1.0 Válido! CSS Válido!
Página criada em 0.071 segundos com 19 procedimentos.