Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Dúvida no Ex. 5 da Aula 5 - Requisições Ajax

Quando faço a requisição o firefox me retorna a seguinte mensagem:

"O método getPreventDefault() não deve mais ser usado. No lugar, use defaultPrevented."

E não realiza o descrito no exercício. Testei com o código que fiz e com o que está no exercício e não funcionou.

Segue meu código:

$('#botao-atualiza').on('click', function(){
        $.ajax({
            url : 'http://mirrorfashion.caelum.com.br/treinamentos',
            dataType : 'jsonp',
            success : function(retorno){
                $.each(retorno.treinamentos, function(){
                    var treinamento = this;
                    $('<li>').text(treinamento.nome).css('color','red').appendTo('#lista');
                });


            }

        });


    });
5 respostas

Tenta com o navegador Opera.

solução!

A mensagem

"O método getPreventDefault() não deve mais ser usado. No lugar, use defaultPrevented."

Pode ser ignorada, não se preocupe. É porque o jQuery está usando um recurso X do Chrome para tentar otimizar o que você quer fazer. Esse erro não tem relação nenhum com o fato do seu código não ter funcionado.

Acabei de testar seu código, do jeito que esta e funcionou. Se não funcionou, pode ser que seu HTML esta com ID trocado ou algo do tipo. Lembro que, sendo uma requisiçõa ajax, pode demorar 2s, 5s,10s para ser concluída. Segue o meu teste:

<!DOCTYPE html>
<html>
<head>
<script src="https://code.jquery.com/jquery-1.9.1.js"></script>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>
  <ul id="lista"></ul>
  <button id="botao-atualiza">Atualiza</button>
</body>
<script>
$('#botao-atualiza').on('click', function(){
        $.ajax({
            url : 'http://mirrorfashion.caelum.com.br/treinamentos',
            dataType : 'jsonp',
            success : function(retorno){
                $.each(retorno.treinamentos, function(){
                    var treinamento = this;
                    $('<li>').text(treinamento.nome).css('color','red').appendTo('#lista');
                });


            }

        });


    });
</script>
</html>

Inclusive você pode cortar e colocar em um arquivo .html qualquer e testar o seu resultado.

Oi Ivanildo, tudo certo? Testou?

Funcionou somente quando atualizei o JQuery. Obrigado.

Como assim atualizou o JQuery? Colocou uma nova versão do JQuery?