Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

185
Visualizações
Error de Ajax al recibir una llamada en lugar de éxito
<script> function editComment(id) { var content = $('#Content').val(); var modelData = { 'Id': id, 'Content': content }; $.ajax({ type: 'POST', dataType: 'json', url: '@Url.Action("EditC", "Comment")', data: JSON.stringify({ model: modelData }), contentType: 'application/json', success: function () { alert("YES"); }, error: function () { alert("Error"); } }); } </script>

Aquí el servidor devuelve 200 OK, pero por alguna razón se llama a la función de error. Tanto el type como el tipo de contentType parecen ser correctos. ¿Algúna idea de cómo arreglar esto?

Editar: después de agregar

 error: function (xhr, textStatus, error) { console.log(xhr.responseText); console.log(xhr.statusText); console.log(textStatus); console.log(error); }

esto es lo que se registra:

 parsererror parsererror SyntaxError: Unexpected end of JSON input at parse (<anonymous>) at ajaxConvert (jquery-3.4.1.js:9013:19) at done (jquery-3.4.1.js:9483:15) at XMLHttpRequest.<anonymous> (jquery-3.4.1.js:9785:9)
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Pasando a una respuesta para futuros lectores...

De hecho, el servidor está devolviendo una respuesta exitosa, pero una respuesta exitosa vacía :

 return new HttpStatusCodeResult(200);

Sin embargo, el código del lado del cliente espera un JSON válido:

 dataType: 'json',

Como resultado, después de recibir la respuesta correcta, internamente el código jQuery intenta analizar esa respuesta como JSON y eso falla, lo que genera la devolución de llamada de error .

Dado que no hay un cuerpo de respuesta (y en la mayoría de los casos, incluso cuando lo hay, siempre que el servidor devuelva el tipo MIME correcto), no necesita ni desea especificar un tipo de dataType en la operación jQuery AJAX. Simplemente elimine esta parte:

 dataType: 'json',
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda