Ir para conteúdo


Foto

[RESOLVIDO] Ext.ux.TextMask.js enviar também a mascara


  • Por favor, faça o login para responder
15 respostas neste tópico

#1 benyhapper

benyhapper

    Member Avançado

  • Membros
  • PipPipPip
  • 301 posts
  • LocationSão Paulo

Postado 26 January 2012 - 11:00

Estou começando a usar a Ext.ux.TextMask.js feita pelo Kptão, mas não descobri ainda uma maneira de em alguns casos, enviar o valor mascarado.
Ex: CEP 03315-000, ele envia 03315000 sem a mascara, e neste caso eu gostaria que a mascara fosse também, deixando o valor 03315-000, isso é possível?

Beny Happer
EXTJS 3.4.0

#2 Leidson Dias

Leidson Dias

    Member Avançado

  • Membros
  • PipPipPip
  • 75 posts
  • LocationJoão Pessoa

Postado 27 January 2012 - 17:08

Não lembro dessa Mask, mais uma solução que vejo é ao dar submit você pegue o valor antes de enviar manipule da forma como queira e depois envia.

Atenciosamente,

#3 Legolas

Legolas

    Ext JS - Admin

  • Administrators
  • 3495 posts
  • LocationBelo Horizonte

Postado 29 January 2012 - 16:49

benyhapper, ao invés de vc utilizar o getValue() do campo resgate do el deste. Exemplo:
seuCampo.el.getValue(); // Aqui resgata o valor com a mascara
Espero que lhe ajude.

"A verdadeira vitória não é derrotar alguém forte... É ser capaz de proteger alguém que você ama de verdade!" (Maito Dai)


#4 benyhapper

benyhapper

    Member Avançado

  • Membros
  • PipPipPip
  • 301 posts
  • LocationSão Paulo

Postado 30 January 2012 - 08:00

Agradeço a todos pelas idéias, mas gostaria de fazer isso automaticamente e parametrizado, caso eu colocasse um sendMask : true automaticamente os campos que estivesse com esse parametro true fosse dado o post já com a mascara e oe que estiverem false, irem sem a mascara.
Será que haveria como fazer isso direto pela Ux?

At,
Beny Happer
EXTJS 3.4.0

#5 Legolas

Legolas

    Ext JS - Admin

  • Administrators
  • 3495 posts
  • LocationBelo Horizonte

Postado 30 January 2012 - 11:53

benyhapper, vc pode estar sobrescrevendo o método "getValue()" do Plugin assim vc verifica se o campo tem o atributo "sendMask" assim resgata do el deste campo.

"A verdadeira vitória não é derrotar alguém forte... É ser capaz de proteger alguém que você ama de verdade!" (Maito Dai)


#6 benyhapper

benyhapper

    Member Avançado

  • Membros
  • PipPipPip
  • 301 posts
  • LocationSão Paulo

Postado 30 January 2012 - 12:24

Já tentei sem sucesso alterar o metodo getValue da Ux
Beny Happer
EXTJS 3.4.0

#7 Rodrigo, Kptão Nascimento

Rodrigo, Kptão Nascimento

    Member Avançado

  • Expert User
  • 2472 posts
  • LocationTres Coroas, RS

Postado 30 January 2012 - 12:56

De uma olhada como fiz isso na versão deste ux pro ext 4: https://github.com/r...xtMaskPlugin.js
Sempre que um tópico for resolvido clique no botão MARCAR COMO RESOLVIDO localizado ao lado do botão RESPONDER.

http://blog.rkn.com.br
http://twitter.com/blogrkn

Atualize seu navegador
http://imasters.uol....br/crossbrowser

#8 benyhapper

benyhapper

    Member Avançado

  • Membros
  • PipPipPip
  • 301 posts
  • LocationSão Paulo

Postado 30 January 2012 - 13:37

Kptão valeu a dica, mas ainda não consegui obter o submit com o valor mascarado, sempre envia sem a mascara, abaixo exemplo de uso e modificação efetuada:

getValue: function()
{
	if(this.sendMask)
	{
		return this.getValueWithMask();
	}else{
		return this.getValueWithoutMask();
	}
},
getValueWithMask: function()
{
	if(this.hiddenField)
	{
		return this.el.dom.value;
	}
	else
	{
		return '';
	}
},
getValueWithoutMask: function()
{
	if(this.hiddenField)
	{
		return this.hiddenField.dom.value;
	}
	else
	{
		return '';
	}
},

Codigo

xtype               : 'masktextfield',
mask                : '99999-999',
money              : false,
sendMask          : true,
fieldLabel           : 'CEP',
autoCreate        : {tag: 'input', type: 'text', maxlength: '9'},
name                : 'cep',     
enableKeyEvents : true,
anchor               : '51%'

Beny Happer
EXTJS 3.4.0

#9 Nom4d3

Nom4d3

    Member Avançado

  • Membros
  • PipPipPip
  • 952 posts
  • LocationAraras/SP/Brasil

Postado 30 January 2012 - 13:47

Estou reescrevendo o plugin do rodrigo pra dar um suporte melhor pro ExtJS 4.1 e estou implementando/testando algumas coisas pra facilitar esse tipo de customizacao. se tiver um tempo e quiser aguardar, creio q deva ficar pronto entre hj e amanha.

#10 benyhapper

benyhapper

    Member Avançado

  • Membros
  • PipPipPip
  • 301 posts
  • LocationSão Paulo

Postado 30 January 2012 - 13:54

Valeu Nom4d3, mas para mim é a versão 3.x, estou errando em algum detalhe que ainda não descobri
Beny Happer
EXTJS 3.4.0

#11 João Victor

João Victor

    Member Avançado

  • Membros
  • PipPipPip
  • 45 posts
  • LocationTrês Corações

Postado 30 January 2012 - 14:19

Você vai gravar esses dados no banco de dados?

Se sim não seria melhor deixar sem formatação.... ou montar a formatação no lado servidor ???


Grato João Victor Gomes da Silva

#12 benyhapper

benyhapper

    Member Avançado

  • Membros
  • PipPipPip
  • 301 posts
  • LocationSão Paulo

Postado 30 January 2012 - 15:11

João, conforme objetivo do tópico, pretendo fazer isso através da Ux
Beny Happer
EXTJS 3.4.0

#13 benyhapper

benyhapper

    Member Avançado

  • Membros
  • PipPipPip
  • 301 posts
  • LocationSão Paulo

Postado 01 February 2012 - 15:04

Kptão, modifiquei o metodo,mas mesmo assim não consegue fazer o submit com o valor mascarado
Beny Happer
EXTJS 3.4.0

#14 Rodrigo, Kptão Nascimento

Rodrigo, Kptão Nascimento

    Member Avançado

  • Expert User
  • 2472 posts
  • LocationTres Coroas, RS

Postado 01 February 2012 - 17:46

O problema do submit é que ele não executa o método getValue, ele pega o valor do input direto, no caso pega o valor sem mascara do hiddenField que é o campo que contem o name. Por isso evito usar o submit
Sempre que um tópico for resolvido clique no botão MARCAR COMO RESOLVIDO localizado ao lado do botão RESPONDER.

http://blog.rkn.com.br
http://twitter.com/blogrkn

Atualize seu navegador
http://imasters.uol....br/crossbrowser

#15 benyhapper

benyhapper

    Member Avançado

  • Membros
  • PipPipPip
  • 301 posts
  • LocationSão Paulo

Postado 02 February 2012 - 10:04

Kptão, valeu mais uma vez pela ajuda, pela sua última observação pude fazer uma alteração que solucionou o meu problema, segue abaixo trecho modificado:

setValue: function(v){
   if(this.sendMask)
  {
	//Verificar se não está em branco
	if(typeof(v) == "undefined" || !v || v.length<1)
	{
		if(this.el){
			this.hiddenField.dom.value = '';
			this.el.dom.value = '';
		}
		this.value = '';
	}else{
		if(this.el){
			this.hiddenField.dom.value = this.textMask.mask(v);
			this.el.dom.value = this.textMask.mask(v);
		}
		this.value = this.textMask.mask(v);
	}
   }else{
	if(this.el){
		this.hiddenField.dom.value = this.textMask.unmask(v);
		this.el.dom.value = this.textMask.mask(v);
	}
		this.value = this.textMask.unmask(v);
   }
}

Beny Happer
EXTJS 3.4.0

#16 zatta

zatta

    Novato

  • Membros
  • PipPip
  • 18 posts

Postado 01 January 2017 - 18:39

alguem converteu este plugin para vesão 6 do extjs?






0 usuário(s) está(ão) lendo este tópico

0 membros, 0 visitantes, 0 membros anônimos