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
Libérer: 2024-11-27 18:11:13
original
815 Les gens l'ont consulté

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
});
Copier après la connexion

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\" }");
}
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal