Cet article présente principalement la méthode pour résoudre le problème selon lequel une erreur apparaît toujours lorsque l'ajax renvoie la vérification. Les amis intéressés peuvent s'y référer
Envoyer un cas simple :
Réception :
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>用户登录</title> <script type="text/javascript" src="../js/jquery-easyui-1.3.5/jquery.min.js"></script> <script type="text/javascript" src="../js/jquery-easyui-1.3.5/jquery.easyui.min.js"></script> <link rel="stylesheet" href="../js/jquery-easyui-1.3.5/themes/default/easyui.css" type="text/css"></link> <link rel="stylesheet" href="../js/jquery-easyui-1.3.5/themes/icon.css" type="text/css"></link> <script type="text/javascript" src="../js/jquery-easyui-1.3.5/locale/easyui-lang-zh_CN.js"></script> <meta http-equiv="content-type" content="text/html;charset=UTF-8" /> <script type = "text/javascript" charset = "UTF-8"> $(function(){ var loginDialog; loginDialog = $('#loginDialog').dialog({ closable : false , // 组件添加属性:让关闭按钮消失 //modal : true, //模式化窗口 buttons : [{ text:'注册', handler:function(){ } }, { text:'登录', handler:function(){ $.ajax({ url:'../servlet/Login_Do', data :{ name:$('#loginForm input[name=name]').val(), password:$('#loginForm input[name=password]').val() }, dataType:'json', success:function(r){ //var dataObj=eval("("+data+")"); alert("进来了"); }, error:function(){ alert("失败"); } }); //alert(data) } }] }); }); </script> </head> <body style=”width:100%;height:100%;" > <p id = "loginDialog" title = "用户登录" style = "width:250px;height:250px;" > <form id = "loginForm" method = "post"> <table> <tr> <th>用户名 :</th> <td><input type = "text" class = "easyui-validatebox" data-options="required:true" name = "name"><br></td> </tr> <tr> <th>密码: </th> <td> <input type = "password" class = "easyui-validatebox" data-options="required:true" name = "password"><br></td></td> </tr> </table> </form> </p> </body> </html>
public class Login_Do extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); String name =request.getParameter("name"); String password = request.getParameter("password"); String js = "{\"name\":name,\"password\":password}"; PrintWriter out = response.getWriter(); JSONObject json = new JSONObject(); json.put("name",name); out.print(json.toString()); response.getWriter().write(json.toString()); } }
Solution : Erreur pop-up générale message Il y a deux possibilités :
La première : L'url est erronée et la valeur ne peut pas être obtenue directement en arrière-planVous pouvez utiliser le firebug de Firefox pour vérifier : Si le message reçoit une réponse , ce n'est pas le problème, alors il y en a. C'est peut-être le cas
Le deuxième cas : Le type de données renvoyé est incorrect :
Dans mon exemple, les données renvoyées ont été accidentellement imprimées deux fois. l'une de ces deux phrases :
out.print(json.toString()); response.getWriter().write(json.toString());
Résoudre parfaitement l'erreur d'analyse syntaxique sous la requête inter-domaine ajax
ajax soumet le numéro de téléphone mobile à la base de données pour vérification et renvoie la valeur d'état
AJAX +SpringMVC implémente la fonction de requête de pagination de la boîte modale d'amorçage
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!