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

(Resolvido) Pegar ultimo campo


Evandro Fontes

Pergunta

Olá,

Estou desenvolvendo uma tela em que exite uma linha com 3 campos (Descrição, Quantidade, Preço).

Nessa tela tem um botão de '+'. Quando eu clico, adiciona uma nova linha. Eu queria saber se tem como eu pegar esse ultimo campo que foi adicionado (Descrição) e colcoar o foco nele.... Todos os campos tem o mesmo nome (txtDescricao[]) ... Então quando eu pego via document.getElemetById() ele retorna sempre o primeiro...

Alguém tem alguma solução ai ? ^^

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Ele retorna Undefined .. =/

A funçãozinha que fiz p/ adicionar linhas foi essa:

function addLinha(){
                var tabela    = document.getElementById("tabela_itens");
                var novaLinha = document.createElement("tr");
                var celula1 = document.getElementById("celula1").cloneNode(true);
                var celula2 = document.getElementById("celula2").cloneNode(true);
                var celula3 = document.getElementById("celula3").cloneNode(true);                
                
                novaLinha.appendChild(celula1);
                novaLinha.appendChild(celula2);
                novaLinha.appendChild(celula3);
                tabela.appendChild(novaLinha);
                
                descricao = document.getElementById("txtDescricao[]");
                alert(descricao.length);
                for(contador=0; contador < descricao.length; contador ++){
                    alert(contador);
                }
            }

Foi u simples teste, mas ele sempre retorna undefined...

========

Tentei pegar os inputs só p/ testar (document.getElementsByTagName("input") e ele retornou um array de todos os inputs da tela....

Editado por Evandro Fontes
Link para o comentário
Compartilhar em outros sites

  • 0

Fiz uma loukura aqui e acabou dando certo... hehehe, o loop ficou assim:

descricao = document.getElementsByTagName("input");
for(i=0; i < descricao.length; i ++){
     if(i == (descricao.length-6)){ // Pega a posição do ultimo camo txtDescricao
        descricao[i].focus(); // manda o foco p/ ele
        descricao[i].value = ''; // Limpa o conteudo do ultimo campo
        descricao[i+1].value = ''; // Limpa conteudo do campo qtde
        descricao[i+2].value = ''; // Limpa conteudo do campo Valor
    }
}

Esse loop resolveu meu problema ^^..

Obrigado cara, Valeu pela ajdua :D

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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...