Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

dammy

alterar função da tecla esc

Recommended Posts

Olá !Estou com um problema e não conseguí achar nada sobre isso...Quando clico na tecla "esc" apaga o conteúdo de todos os inputs do formulário.Preciso fazer com que, ao clicar no esc, volte para o input anterior.Ou, na pior das hipóteses, desabilitar o esc.Espero que tenha como fazer isso...Por favor, me ajudem.Um abraço,Dammy

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, já sei que a tecla ESC é 27 e que para voltar ao campo anterior é shift+tab.Agora só preciso saber como que eu escrevo a função no javascript... alguém se habilita?Dammy

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa!fiz um pequeno exemplo, mais ou menos assim:

<html><head><script language="javascript">function verificaTecla() {	//captura evento	var e = window.event;	var codigo_tecla = e.keyCode ? e.keyCode : e.which;	//se o evento eh o esc	if ( codigo_tecla == 27 ) {		//percorrer todos os inputs		var itens = document.getElementsByTagName("input");		for ( i=0; i < itens.length; i++ ) {					//identifica campo q esta com focus atual			if ( document.activeElement.name == itens[i].name ) {							//se existe campo pra voltar focus				if ( i > 0 ) {									//volta focus					itens[i-1].focus();				}			}		}	}}</script></head><body onkeydown="java script:verificaTecla();"><input type="text" name="edt1" onfocus="this.style.backgroundColor='#bbbbbb'" onblur="this.style.backgroundColor='#ffffff'"><br/><input type="text" name="edt2" onfocus="this.style.backgroundColor='#bbbbbb'" onblur="this.style.backgroundColor='#ffffff'"><br/><input type="text" name="edt3" onfocus="this.style.backgroundColor='#bbbbbb'" onblur="this.style.backgroundColor='#ffffff'"><br/><input type="text" name="edt4" onfocus="this.style.backgroundColor='#bbbbbb'" onblur="this.style.backgroundColor='#ffffff'"><br/><input type="text" name="edt5" onfocus="this.style.backgroundColor='#bbbbbb'" onblur="this.style.backgroundColor='#ffffff'"><br/></body></html>
eu soh testei no IE6.sucesso ai,

ps.: soh lembrando q dentro do codigo, a palavra javascript eh junto, o forum eh q separou.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Mestre Sam !! Obrigada pela ajuda.É exatamente isso que eu preciso, mas, por curiosidade, gostaria de saber se tem como alterar a tecla ESC para shift+tab.Eu já conseguí alterar o enter pra tab, mas não sei como escrever a função para acionar 2 teclas simultaneas (shift+tab).Será que tem como fazer isso?Muito obrigada !Um abraço,Dammy

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poxa... não deu certo.Deu o seguinte erro:

Não é possível mover o foco para o controle porque este é invisível, não ativado ou de um tipo que não aceita foco.

E, se clicar a segunda vez no ESC, continua apagando "tudo" que já havia sido preenchido.Acho que o ideal seria mesmo mudar o esc para shift+tab, se é que tem jeito.Obrigada pela atenção.Dammy

Compartilhar este post


Link para o post
Compartilhar em outros sites

oi,o codigo q eu te passei funciona normal, do jeito q você falou.se esta dando erro na sua aplicacao, coloque seu codigo ai para vermos onde esta o erro.e mudar o enter para tab, você esta pegando o keycode e alterando para o keycode do tab quando for keycode do enter,eh isso?e quer alterar o keycode do esc para um keycode de teclas simultaneas?!acho q nao existe keycode de teclas simultaneas.você precisa eh adaptar meu exemplo, q eh simples, afinal eh soh um exemplo, para funcionar na sua aplicacao.t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, Mestre SAM ! Obrigada de novo por sua atenção.

 

Eu pesquisei bastante sobre teclas simultaneas e acho que você tem razão... essa opção não existe.

 

Quanto ao seu código, eu achei muito legal e funcional.

 

É que no meu código há uma porção de "coisinhas" aplicadas, estou usando o for para gerar campos e também há funções no onchange .

 

Preciso ter um tempinho para fazer alguns testes. Por agora, como preciso entregar o projeto, eu bloqueei a tecla ESC, para depois rever com calma.

 

Um abraço !

 

Dammy

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.