none
Dificuldade com ajax, minha requisição via ajax funciona no internet explorer 8 mas não no google chrome RRS feed

  • Pergunta

  • eu estou usando ajax em meu programa e estou com o seguinte problema, quando eu rodo o programa no chrome ele da erro no ajax , mas quando usso o debugger no chrome ele da sucesso, e no internet explorer ele roda normal, alguma ideia? estou usando MVC 4 meus codigos são : 
    eu mando um objeto para o controller e ele me retorna outro...


    $.ajax({

    url: urlab, type: 'POST', dataType: 'json', data: retur, success: function (retorno) { var result = retorno.Result; alert(result); var teste = retorno.Record; }, error: function() { alert("erro"); } });

    meu controller:

        [HttpPost]
        public JsonResult Filtro(Acesso_BaseDados filtro)
        {
         ...... tratamento dos dados...
         List<Acesso_BaseDados> retorno = a.Acesso_BaseDados.SqlQuery(busca).ToList();
            return Json(new { Result = "OK", Record = retorno });
        }

    quinta-feira, 7 de março de 2013 16:59

Todas as Respostas

  • Tenta fazer dessa forma!
    $.ajax({
                    type: "POST",
                    url: urllab,
                    contentType: "application/json",
                    data: JSON.stringify({ filtro: return }), //serializar ojeto para action,
                    processData: false,
                    success: function (retorno) {
                        //código
    
                    },
                    complete: function () {
                         //código 
                    },
                    error: function () {
                         //código
                    }
    
                });

    quinta-feira, 7 de março de 2013 17:10
  • Não funcionou ;/
    quinta-feira, 7 de março de 2013 17:35
  • Pelo o que eu percebi , o chrome não espera o dado ir e voltar , na hora que o dado já vai pra action ele já da o erro, se o dado voltar.
    quinta-feira, 7 de março de 2013 17:40
  • No Chrome, se vc apertar "F12", vai aparecer o debuger, vai em "Network", da uma olhada como esta vindo o seu retorno la.

    Exemplo, aqui nesta imagem eu tenho um DropDown em cascata que via Json vai ateh o controller, faz o select no banco e me retorna o resultado.

    No lado direito se clico em cima do DropContador ele mostra se o request deu certo ou trouxe algum problema, se vc for na aba "Response" vc tem o "conteúdo" de sua request.

    Como estão chegando esses dados para vc?


    Paulo Marcelo Dalbosco

    sexta-feira, 8 de março de 2013 12:36
  • Pelo o que eu percebi , o chrome não espera o dado ir e voltar , na hora que o dado já vai pra action ele já da o erro, se o dado voltar.

    Qual é o erro?
    sexta-feira, 8 de março de 2013 13:16
  • Tenta assim:

    $.post($(form).attr("action"), $(form).serialize(), function (data) {
    var result = $.parseJSON(retorno.Result);
            alert(result);                                
            var teste =  $.parseJSON(retorno.Record);

                }).error(function (error) {
                     $.parseJSON(error.responseText);
                }, "json");


    sexta-feira, 8 de março de 2013 17:38