Ir para conteúdo


Foto

Dúvida quanto a minLenght e maxLenght


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

#1 Bolognese

Bolognese

    Iniciante

  • Membros
  • Pip
  • 2 posts

Postado 07 February 2009 - 19:42

Estou me iniciando no mundo do Ext JS e para evoluir conto com a ajuda de todos por aqui.

Minha primeira dúvida é quanto a trabalhar com minLenght e maxLenght.

Já vi até alguns tópicos discutindo isso por aqui, mas não consegui fazer de jeito nenhum funcionar no meu código. Sendo assim se alguém puder me ajudar, segue meu código.

Obrigado.

 var login = new Ext.FormPanel({ 
        labelWidth:80,
        url:'login.php', 
        frame:true, 
        title:'Login', 
        defaultType:'textfield',
        monitorValid:true,
        items:[{ 
                fieldLabel:'Login', 
                name:'loginUsername',
                allowBlank:false,
                minLenght: 3,
                maxLenght: 15
            },{ 
                fieldLabel:'Senha', 
                name:'loginPassword', 
                inputType:'password', 
                allowBlank:false,
                minLenght: 3,
                maxLength:10
            }],
 
        buttons:[{ 
                text:'Login',
                formBind: true,	 
                handler:function(){ 
                    login.getForm().submit({ 
                        method:'POST', 
                        waitTitle:'Acessando o servidor', 
                        waitMsg:'Enviando os dados...',
 
                        success:function(){ 
                        	Ext.Msg.alert('Status', 'Login realizado com sucesso!', function(btn, text){
                        	if (btn == 'ok'){
                        		var redirect = 'inicio.php'; 
                        		window.location = redirect;
                            }
			        });
                        },
 
                        failure:function(form, action){ 
                            if(action.failureType == 'server'){ 
                                obj = Ext.util.JSON.decode(action.response.responseText); 
                                Ext.Msg.alert('Login Inválido!', obj.errors.reason); 
                            }else{ 
                                Ext.Msg.alert('Importante!', 'Servidor não encontrado : ' + action.response.responseText); 
                            } 
                            login.getForm().reset(); 
                        } 
                    }); 
                } 
            }] 
    });



#2 lucastody

lucastody

    Member Avançado

  • Membros
  • PipPipPip
  • 425 posts
  • LocationUberlandia - MG

Postado 09 February 2009 - 08:10

O minLength e o maxLength aplicados a um textfield, como no seu codigo, determina que se o usuario digitar um valor abaixo do minimo (minLength), o campo acusará um erro (ficara com sublinhado vermelho), e no caso do maxLength, o usuário conseguira digitar uma quantidade a mais de caracteres permitido, porem o campo também acusará erro sublinhando o campo.


obs.: Esses atributos nao limita o campo, apenas informa se o usuario digitou a qtde maxima ou minima determinada.


espero ter ajudado, t+
Após a resolução de um tópico, clique no link "marcar como resolvido" (ao lado do link responder) para adicionar [RESOLVIDO] no título do tópico, isso irá ajudar a manter o fórum organizado e mais ágil nas resoluções de outras dúvidas de mesma natureza.

#3 Bolognese

Bolognese

    Iniciante

  • Membros
  • Pip
  • 2 posts

Postado 09 February 2009 - 13:29

Entendi.

E qual seria o código correto para forçar o campo a ter apenas X caracteres?

Valeu pela ajuda.

#4 lucastody

lucastody

    Member Avançado

  • Membros
  • PipPipPip
  • 425 posts
  • LocationUberlandia - MG

Postado 09 February 2009 - 13:35

eu uso assim:

{
	xtype: 'textfield',
	...
	autoCreate = {tag: 'input', type: 'text', maxLength: 30, autocomplete: 'off'};
	...
}

tag = o tipo do campo (como usado no html), nesse caso: um campo (textfield)
type = eh um texto
maxLength = limitador de caracteres (diferente do EXT)
autocomplete = opcional


testa ai e posta o resultado

vlw

obs.: Nesse caso, para textareas, nao vai funcionar.
Após a resolução de um tópico, clique no link "marcar como resolvido" (ao lado do link responder) para adicionar [RESOLVIDO] no título do tópico, isso irá ajudar a manter o fórum organizado e mais ágil nas resoluções de outras dúvidas de mesma natureza.

#5 arthurminarini

arthurminarini

    Member Avançado

  • Membros
  • PipPipPip
  • 280 posts

Postado 09 February 2009 - 14:22

eu uso assim

{
                                xtype:'textfield',
                                id:'codBarraEleitor',
                                name:'codBarraEleitor',
                                hideLabel: true,
                                autoCreate: {
                                    tag: "input",
                                    type: "text",
                                    autocomplete: "off",
                                    maxlength: 6
                                },
                                maskRe: /[0-9]/,//Validando os tipos de caracteres de entrada
                                selectOnFocus:true,
                                enableKeyEvents:true,
                                //  allowBlank:false,
                                blankText:'Informe o número da chapa do eleitor'
                            }


#6 claudior.bueno

claudior.bueno

    Iniciante

  • Membros
  • Pip
  • 7 posts

Postado 16 August 2011 - 16:13

Qual seria o comando para limitar caracteres num textarea ?



#7 Fabio Jr. Policeno

Fabio Jr. Policeno

    Member Avançado

  • Expert User
  • 2933 posts
  • LocationCuritiba - PR

Postado 16 August 2011 - 16:39

Mesmo esquema:

{
		            	xtype: 'textarea',
		            	name      : 'observacao',
						fieldLabel: 'Observação',
						width     : 395,
						height     : 90,
						maxLength       : 300,
						maxLengthText   : 'Máximo 300 caracteres.'
		            }

Produtos/Serviços Ext JS
Porque dEle, por Ele, para Ele são todas as coisas

#8 Legolas

Legolas

    Ext JS - Admin

  • Administrators
  • 3497 posts
  • LocationBelo Horizonte

Postado 16 August 2011 - 22:11

Para limitar o número de caracteres eu utilizo o atributo autoCreate assim qdo o usuário informar o tamanho no campo será aceito somente o limite proposto no componente.
Exemplo:
...
{
     xtype: 'textfield'
    ,fieldLabel: 'Nome'
    ,name: 'nome'
    ,anchor: '90%'
    ,allowBlank: false
    // Aqui que eu informo o tamanho máximo de caracteres no campo
    ,autoCreate: {tag: 'input', type: 'text', maxlength: 40}
}
...

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





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

0 membros, 0 visitantes, 0 membros anônimos