JavaScript

JavaScript: Setando o foco em um campo

Na maior parte dos sites desenvolvidos sempre tem uma página de contato com um formulário a ser preenchido. E quando acessamos este tipo de página queremos logo preenchê-lo. Porém, muitos sites não deixam o foco no campo, quero dizer, o cursor piscando.

Então, para resolver este problema e para agilizar o trabalho de quem chega em seus sites, basta seguir os passos abaixo:

1. Toda página de contato submite os seus dados preenchidos para o servidor. Para que isto ocorra, o primeiro passo é criar a Tag <FORM>.

Sintaxe Básica:

<FORM ACTION=”url” METHOD=”GET ou POST”>

Podemos incluir eventos e outros atributos para a Tag <FORM>.

A Tag <FORM> pode conter vários inputs, tipo caixa de seleção (checkbox), botão de rário (radio), botão de envio de dados (submit), entrada de texto (text), entrada de senhas (password) e muito mais.

Exemplo:

<form action="enviar_dados.php" method="post" name="frmEnviaDados">
    <input maxlength="20" name="txtnome" size="20" type="text" />
    <input maxlength="20" name="txtemail" size="20" type="text" />
</form>

2. Finalizando, estes códigos devem estar dentro das Tags <body> </body>.

Para que o foco apareça no campo de sua escolha, basta digitar o seguinte código:

<body onLoad=”document.frmEnviaDados.txtnome.focus();“>

–> separando as partes:

document: instância de um objeto que é criado todas vez que visualiza uma página HTML.

frmEnviaDados: é o nome dado ao formulário – valor do atributo “name”.

txtnome: nome dado ao campo que vai receber o foco. Refere-se ao campo onde o usuário vai digitar seu nome.

focus(): coloca o foco da página no campo de texto.

Até a próxima!

11 comentários sobre “JavaScript: Setando o foco em um campo

  • Realmente fantástico … muito obrigado me ajudou muito

    Resposta
  • Só é possível usar o focus em um form? Não dá pra usá-lo fora dele?

    Resposta
    • Fala Marcos,

      veja outra forma:

      <script type="text/javascript">
      function setFocus() {
        document.getElementById("foco").focus(); 
      }
      </script> 
      <body onLoad="setFocus()">
      <input type="text" name="foco" id="foco" />
      </body>
      Resposta
  • Chefe, tem como eu colocar o foco num type=”radio” ?

    Resposta
  • Podem fazer com jQuery $(“input[name=nm_local]”).focus();

    é só alterar o tipo e nome do campo.

    Resposta
  • Se vcs puderem me ajudar:
    Como faço para utilizar a mesma função em vários imputs?
    O caso é que tenho uma função que gera uma máscara e quero que ela identifique o nome do campo e aplique a máscara, caso contrário terei que fazer uma função p/ cada campo. Eis a função e o nome do meu imput é data mas quero aplicar também no imput data1, data2, etc.:

    function mascara_data(data){
    var mydata = ”;
    mydata = mydata + data;
    if (mydata.length == 2){
    mydata = mydata + ‘/’;
    document.forms[0].data.value = mydata;}
    if (mydata.length == 5){
    mydata = mydata + ‘/’;
    document.forms[0].data.value = mydata;}}

    Resposta

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *