Jump to content
carlosarieira1

Key codes Java Script

Recommended Posts

carlosarieira1

Preciso de apenas permitir introduzir num campo de texto, numeros e a letra (z), para já criei assim mas nao esta a funionar a parte do (z).

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

<html><head><title> Somente Números </title>
</head><body>
<input type='text' size='10' value='' onkeypress='return SomenteNumero(event)'>
</body></html>

Alguem me pode ajudar ?

Edited by yoda
tags code + GeSHi

Share this post


Link to post
Share on other sites
HappyHippyHippo

if (tecla==90 == tecla==90)

isto é o mesmo que :

if (tecla==(90 == (tecla==90)))

que é avaliado como:

if (tecla==
          (90 == 
                 (tecla==90))) // verdadeir0
//
if (tecla==
          (90 == 1)) // ups ... falso

e que tal somente ?

if (tecla==90)

Edited by HappyHippyHippo

IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
carlosarieira1

Sim ja funcionou e se por exemplo agora quiser adicionar a tecla (backspace (tecla== 8) e Capslock (tecla==20)), como faço ?

Share this post


Link to post
Share on other sites
HappyHippyHippo

if (tecla==90 ||                            // ou a tecla z
   tecla == /* valor da tecla ... */ ||    // ou a tecla ...
   tecla == /* valor da tecla ... */)      // ou a tecla ...

ps : ou fazer tudo de uma vez:

if ((tecla > 47 && tecla < 58) ||           // as teclas entre 47 e 58
   tecla==90 ||                            // ou a tecla z
   tecla == /* valor da tecla ... */ ||    // ou a tecla ...
   tecla == /* valor da tecla ... */)      // ou a tecla ...
 return true;
return false;

Edited by HappyHippyHippo

IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
carlosarieira1

Ficaria assim certo ??

<script language='Javascript'>

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

</script>

Edited by brunoais
geshi

Share this post


Link to post
Share on other sites
yoda

<input type="text" onkeypress="validate_input(event, '[z0-9]+');" />

function validate_input(e, rule)
{
  var key = String.fromCharCode(e.charCode ? e.charCode : e.keyCode);

  rule = new RegExp('^'+rule+'$');

  if (key.match(rule))
  {
     return true;
  }
  else
  {
     e.preventDefault();
     return false;
  }
}

Edited by yoda

Share this post


Link to post
Share on other sites
HappyHippyHippo

<input type="text" onkeypress="validate_input(event, '[z0-9]+');" />

function validate_input(e, rule)
{
  var key = String.fromCharCode(e.charCode ? e.charCode : e.keyCode);

  rule = new RegExp('^'+rule+'$');

  if (key.match(rule))
  {
     return true;
  }
  else
  {
     e.preventDefault();
     return false;
  }
}

isso come backspace's e afins ?


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
yoda

Como assim? Está aqui para testar : http://jsfiddle.net/SyxjH/

A validação ocorre caracter a caracter, e só é inserido se for o caracter correcto. Não valida porém o conteúdo que for colado por copy-paste, pelo que convém fazer essa validação ora antes de enviar o formulário ora dentro da função de validação (validando assim o todo da string em vez de caracter a caracter).

Edited by yoda

Share this post


Link to post
Share on other sites
HappyHippyHippo

o OP perguntou como aceitar teclas como o backspace e o capslock, além dos números e do z.

eu não sei para quê também não me interessa. eu só perguntei porque nunca testei :

"esse script retorna verdadeiro se carregar em teclas como o backscape ?"


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.