Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Quando pressiono enter ele aciona o botão de logout.


Vanessa Eufrásio

Pergunta

Olá pessoal..

Dei umas pesquisadas aqui, achei algumas respostas mas que não atendem a minha necessidade.

Estou trabalhando em um projeto Asp .Net com o VS2008.

Tenho um botãozinho de logout dentro de uma div que está presente em todas as telas. Esse botão de logout é um componente do Telerik, não tenho certeza mas acho que se chama LoginStatus.

Bom sempre que eu estou preenchendo algum campo e acabo dando enter ele aciona o botão de logout e redireciona para a tela de login.

Como posso fazer para que ao invés de ele acionar o botão ligin ele pule para o próximo campo, como faz o tab???

Muito obrigada

Nessa

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Oi gente...

De tanto eu pesquisar acabei encontrando um código javascript que atendesse ao meu problema..

O código é do Carlos Reche Moderador Illidan Mago do Javascript, e ai vai..

Até mais..

<script type="text/javascript">

function addEvent(obj, evType, fn) {
  if (typeof obj == "string") {
        if (null == (obj = document.getElementById(obj))) {
          throw new Error("Cannot add event listener: HTML Element not found.");
        }
  }
  if (obj.attachEvent) {
        return obj.attachEvent(("on" + evType), fn);
  } else if (obj.addEventListener) {
        return obj.addEventListener(evType, fn, true);
  } else {
        throw new Error("Your browser doesn't support event listeners.");
  }
}

function iniciarMudancaDeEnterPorTab() {
  var i, j, form, element;
  for (i = 0; i < document.forms.length; i++) {
        form = document.forms[i];
        for (j = 0; j < form.elements.length; j++) {
          element = form.elements[j];
          if ((element.tagName.toLowerCase() == "input")
                && (element.getAttribute("type").toLowerCase() == "submit")) {
                form.onsubmit = function() {
                  return false;
                };
                element.onclick = function() {
                  if (this.form) {
                        this.form.submit();
                  }
                };
          } else {
                element.onkeypress = mudarEnterPorTab;
          }
        }
  }
}

function mudarEnterPorTab(e) {
  if (typeof e == "undefined") {
        var e = window.event;
  }
  var keyCode = e.keyCode ? e.keyCode : (e.wich ? e.wich : false);
  if (keyCode == 13) {
        if (this.form) {
          var form = this.form, i, element;
          // se o tabindex do campo for maior que zero, irá obrigatoriamente
          // procurar o campo com o próximo tabindex
          if (this.tabIndex > 0) {
                var indexToFind = (this.tabIndex + 1);
                for (i = 0; i < form.elements.length; i++) {
                  element = form.elements[i];
                  if (element.tabIndex == indexToFind) {
                        element.focus();
                        break;
                  }
                }
          }
          // se o tabindex do campo for igual a zero, irá procurar o campo com tabindex
          // igual a 1. Caso não encontre, colocará o foco no próximo campo do formulário.
          else {
                for (i = 0; i < form.elements.length; i++) {
                  element = form.elements[i];
                  if (element.tabIndex == 1) {
                        element.focus();
                        return false;
                  }
                }
                // se não encontrou pelo tabIndex, procura o próximo elemento da lista
                for (i = 0; i < form.elements.length; i++) {
                  if (form.elements[i] == this) {
                        if (++i < form.elements.length) {
                          form.elements[i].focus();
                        }
                        break;
                  }
                }
          }
        }
        return false;
  }
}

// quando terminar o carregamento da página, executa a "iniciarMudancaDeEnterPorTab"
addEvent(window, "load", iniciarMudancaDeEnterPorTab);

</script>


<h2>Com tabindex</h2>
<form action="#" method="get">
  Campo 1: <input type="text" name="campo1" tabindex="0" /><br />
  Campo 2: <input type="text" name="campo2" tabindex="2" /><br />
  Campo 3: <input type="text" name="campo3" tabindex="4" /><br />
  Campo 4: <input type="text" name="campo4" tabindex="3" /><br />
  Campo 5: <input type="text" name="campo5" tabindex="1" />
  <input type="submit" value="Enviar" />
</form>

<h2>Sem tabindex</h2>
<form action="#" method="get">
  Campo 1: <input type="text" name="campo1" /><br />
  Campo 2: <input type="text" name="campo2" /><br />
  Campo 3: <input type="text" name="campo3" /><br />
  Campo 4: <input type="text" name="campo4" /><br />
  Campo 5: <input type="text" name="campo5" />
  <input type="submit" value="Enviar" />
</form>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...