Como faço para limitar um campo a 9 números inteiros? (Java)?

[code]

Insira o Valor A



Insira o Valor B



Insira o Valor C



[/code]

Como podem ver no meu formulário tenho vários campos (“A”,“B” e “C”)
Como faço para limitar o campo “A” a 9 números inteiros obrigatóriamente?
Sei que tenho que usar ^[0-9]{1,9}$
Mas como uso isso?

Html possui o magnífico “maxlengh”

<input type="text" maxlength="9" size="9">

Bom dia,

Você pode utilizar o JQuery!!
Dê uma olhada:

http://docs.jquery.com/Plugins/Validation/

Qualquer dúvida posta ai.

Att.

[quote=drsmachado]Html possui o magnífico “maxlengh”

<input type="text" maxlength="9" size="9"> [/quote]
“9 números inteiros obrigatoriamente”
Preciso que o cara insira 9 obrigatoriamente. Com esse código ae ele pode inserir 2!

javascript, meu caro.
Coloca uma função que valide a quantidade inserida, a partir do evento onKeyUp…

o maxlenght limita o campo a 9 dígitos mas não trata se são números ou letras…
acredito que você terá que tratar via javascript.

function SomenteNumero(e){
    var tecla=(window.event)?event.keyCode:e.which;   
    if((tecla>47 && tecla<58 )) return true;
    else{
    	if (tecla==8 || tecla==0) return true;
	else  return false;
    }
}

essa função prevê que os dígitos sejam numéricos…
agora vc cria uma para tratar a obrigatoriedade da quantidade de dígitos!

Abraços

Pois minha gente. O problema é que nunca usei javascript, não faço a mínima ideia como se usa. E simplesmente não tenho tempo para ir ver tutoriais de javascript pois meu projecto daqui a pouco tem de tar pronto.

[quote=jscamara]o maxlenght limita o campo a 9 dígitos mas não trata se são números ou letras…
acredito que você terá que tratar via javascript.

function SomenteNumero(e){
var tecla=(window.event)?event.keyCode:e.which;
if((tecla>47 && tecla<58 )) return true;
else{
if (tecla==8 || tecla==0) return true;
else return false;
}
}

essa função prevê que os dígitos sejam numéricos…
agora vc cria uma para tratar a obrigatoriedade da quantidade de dígitos!

Abraços[/quote]
Cara isso não precisa de especificar qual o textbox para fazer isso? O formulário está numa página e o processamento está noutra. Não da somente para fazer isso para o campo (A)?

faz assim, no campo do input A vc adiciona o evento onKeyPress, ou o onKeyRelease,
e passa a função do javascript
tendeu?

Olá colega,

A função que o jscamara postou, recebe um evento (que é a tecla que você pressionou) para fazer a chamada dessa função, você faz assim:


<html>
<head>
   <script type="text/javascript">
    //a função vai aqui 
   </script>
</head>
<body>
...
<form>
   <input type="text" name="A" size="9" maxlength="9" onkeypress="SomenteNumero(event)">
</form>
...
</body>
</html>

Blz galera. Funciona. Agradeço a todos vocês.
Agora para finalizar peço uma breve explicação a vcs do javascript aqui “postado” como sou novo em javascript não percebo a lógica dele.
E já agora…o JavaScript também pode ser usado em páginas HTML?

function SomenteNumero(e){ //blz var tecla=(window.event)?event.keyCode:e.which; //nao percebo if((tecla>47 && tecla<58 )) return true; //nao percebo else{ //blz if (tecla==8 || tecla==0) return true; //nao percebo else return false; //blz } //blz } //blz

É assim manolo,

a variável tecla recebe pelo evento a tecla que vc digitou.
Ex: vc digitou a letra “a”

ele entra no primeiro if,
pergunta a tecla esta entre 47 e 58 ?

mas pq 47 e 58? São os códigos ASCII correspondentes aos números de 0 a 9 !
então a letra “a” não esta dentro do primeiro if,

aew vai pro segundo if,
pergunta a tecla é 8 ou 0
mesma coisa…códigos ascii correspondente ao backspace e ao null,
a letra “a” não é nenhuma dessas.

aew retorna falso e ele não adiciona no campo input text

sacou???
se retornar true, a letra é adicionada no campo!

Simples!
^^