4
respostas

Problemas com ID Jquery

Olá,

Estou fazendo vários cursos no Alura e estou aplicando JQuery em arquvos jsp do Java (Framework Spring).

Na minha aplicação, inicialmente estava usando um JQuery obsoleto em um Autocomplete, que peguei de um código pronto no site do Jquery mesmo.

<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
  <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>

Após tanto levar pancada tentando colocar um Autocomplete na minha aplicação, resolvi fazer o curso aqui no Alura, desenvolvi o Autocomplete (funcionando perfeitamente com os posts e gets), porém notei que utilizava uma versão obsoleta to Jquery e atualizei o jquery-1.12.4.js para o 3.2.1 (última versão). Pra minha surpresa o meu código parou de funcionar. O Autocomplete que funcionava perfeitamente deu problema e mesmo voltando a utilizar a versão antiga do Jquery não funcionava mais. Depois de horas perdidas e sem entender o que havia de errado no código, descobri que trocando os id dos campos HTML tudo voltava ao normal com a versão 3.2.1, sem alterar uma linha de código. Problema resolvido, ok. Porém, gostaria de saber o motivo disso ocorrer. Não foi cache de navegador, pois eu uso o Chrome e quando fico achando que pode ser cache, sempre abro o Edge para conferir. Fiz vários cleans e updates no meu projeto e somente trocando os id no HTML resolveu.

Obrigado

4 respostas

opa, só com essa informação acho que fica complicado de saber.. tinha que ver qual era o erro que estava dando antes e tudo mais..

não dava erro. os métodos $get e $post do Jquery continuaram funcionando, mas o valor que vinha dos campos HTML não era passado para estes métodos. Não tinha erro no console do navegador. Coloquei as variáveis para aparecerem no console e sempre aparecia undefined. Tudo voltou ao normal quando troquei o id dos campos HTML. Inicialmente achei que poderia ser devido ao tamanho do id, mas não era, pois troquei de id="cliente-descrição" para id="descrição-cliente" e fui fazendo o mesmo para os outros campos. Tudo normal agora apenas com esta troca. Não foi somente no meu código. Estudo com um amigo e fizemos a mesma implementação de estudo, fizemos os mesmos passos e aconteceu a mesma coisa. Há algum cache em algum lugar que poderia ter dado conflito quando troquei as versões do JQuery?

Olha Francesco, o único cache que consigo imaginar é o cache do navegador, mas como você disse que testou em outro navegador e o problema continuou, não sei o que pode ter sido.

O fato de você atualizar a versão, dar um erro, e voltar para versão anterior que funcionava e continuar dando erro que é o mais esquisito para mim. Concordo com você que não faz sentido computacionalmente falando que isso tenha acontecido, mas talvez tenha sido alguma distração na hora de trocar os arquivos das diferentes versões do jQuery ou algo do tipo.

Como você conseguiu resolver trocando os id's, pelo menos conseguiu deixar esse problema para trás.

Vamos ver se algum membro aqui da Alura consegue jogar uma luz ou já experimentou algo parecido e comente aqui no post.

ok Douglas Obrigado!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software