Maison >interface Web >js tutoriel >Pourquoi ma requête jQuery Ajax renvoie-t-elle 200 OK mais déclenche-t-elle l'événement d'erreur ?

Pourquoi ma requête jQuery Ajax renvoie-t-elle 200 OK mais déclenche-t-elle l'événement d'erreur ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-27 18:11:13826parcourir

Why Does My jQuery Ajax Request Return 200 OK But Trigger the Error Event?

La requête jQuery Ajax renvoie le succès (200 OK) mais déclenche un événement d'erreur

Votre requête jQuery Ajax renvoie toujours 200 OK, indiquant un succès réponse. Cependant, jQuery exécute toujours l'événement d'erreur au lieu de l'événement de réussite.

Le problème :

Lors de l'utilisation de $.ajax de jQuery, si le paramètre dataType est défini sur "json" (comme dans votre code), il s'attend à ce que la réponse du serveur soit un JSON valide. Cependant, dans votre cas, la réponse du serveur est HTML, ce qui n'est pas un JSON valide. Cela amène jQuery à générer une erreur d'analyse et à déclencher l'événement d'erreur.

Solution 1 : Supprimer dataType : 'json'

Une solution consiste à supprimer le paramètre dataType de votre requête Ajax. Cela permettra à jQuery d'interpréter la réponse sous forme de texte brut, qui inclura le HTML que vous envoyez depuis votre serveur.

$.ajax({
    type: 'POST',
    url: 'Jqueryoperation.aspx?Operation=DeleteRow',
    contentType: 'application/json; charset=utf-8',
    data: json,
    cache: false,
    success: AjaxSucceeded,
    error: AjaxFailed
});

Solution 2 : Renvoyer le JSON depuis le serveur

Vous pouvez également modifier votre code C# côté serveur pour renvoyer JSON au lieu de HTML. Cela garantira que jQuery pourra analyser correctement la réponse et exécuter l'événement de réussite.

private void test() {
    Response.ContentType = "application/json";
    Response.Write("{ \"message\": \"Record Deleted\" }");
}

Avec cette modification, jQuery recevra une réponse JSON valide et déclenchera l'événement de réussite comme prévu.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn