Maison >interface Web >js tutoriel >Que dois-je faire si la méthode jquery $.post ne s'exécute pas ?

Que dois-je faire si la méthode jquery $.post ne s'exécute pas ?

coldplay.xixi
coldplay.xixioriginal
2020-11-25 15:54:482363parcourir

La solution au problème selon lequel la méthode jquery $.post n'est pas exécutée : définissez les données renvoyées sur les données json et le code est [out.print(JSONObject.fromObject(result));].

Que dois-je faire si la méthode jquery $.post ne s'exécute pas ?

L'environnement d'exploitation de ce tutoriel : système windows7, version jquery3.2.1, cette méthode convient à toutes les marques d'ordinateurs.

Solution au problème selon lequel la méthode jquery $.post ne s'exécute pas :

À propos du problème selon lequel la fonction de rappel post de JQuery ne s'exécute pas

La fonction de rappel de publication frontale n'est pas exécutée, après avoir défini le débogage du point d'arrêt, elle ignore toujours l'exécution

Démonstration d'erreur :

Code backend

@RequestMapping(value = "login")
public void CheckUserAccount(@RequestParam("account")String account, HttpServletResponse response) throws IOException{
JSONObject json_account = JSONObject.fromObject(account);
int username = (Integer)json_account.get("username");
String password = json_account.getString("password");
logger.info("username = " + username + " password = " + password);
int status;
status = checkUserAccountService.IsCorrect(username, password);
Map<String, Object> result = new HashMap<String, Object>();
Map<String, String> info_json = new HashMap<String, String>();
if(status == 1){
info_json.put("status", "success");
}else if(status == 0){
info_json.put("status", "errorpassword");
}else{
info_json.put("status", "noexitaccount");
}
result.put("info", info_json);
JSONObject json_object = JSONObject.fromObject(result);
response.setContentType("text/json; charset=utf-8");
response.setHeader("Cache-Control", "no-cache");
PrintWriter out = response.getWriter();
out.print(result);
out.flush();
out.close();
logger.info("验证结果是" + ((Map<String, String>)(result.get("info"))).get("status"));

La phrase importante est :

response.setContentType("text/json; charset=utf-8");

Les données renvoyées ici sont définies sur des données json, mais out.print(result); la sortie ici est une carte, donc le frontal ne peut reconnaître aucune donnée, et le la fonction de rappel du résultat est ignorée directement sans exécution (car la fonction de rappel n'exécute que les données json)

Démonstration correcte :

doit être remplacé par : out.print(JSONObject.fromObject(result));

.

Recommandations d'apprentissage gratuites associées : javascript (vidéo)

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