この記事では、ajax がフロントエンドとバックエンド間の単純なデータ対話をどのように実現できるかを主にコードの形式で説明します。
早速、コードにいきましょう:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>ZERO</title> </head> <script type="text/javascript" src="js/jquery-1.8.2.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#regist").bind('click',register); }); function register(){ var name = $("#name").attr('value'); var password = $("#password").attr('value'); var repassword = $("#repassword").attr('value'); if(validate(name,password,repassword)){ $.ajax({ url: "ajaxdemo", dataType : "json", type: "post", data: {"name":name,"password":password}, success:function(data){ alert(data.demo); }, error: function() { alert("ajax执行失败"); } }); } } /* 验证方法 */ function validate(name,password,repassword){ if(name==null || name==''){ alert('用户名不能为空!'); $("#name").focus(); return false; } if(password==null || password==''){ alert('密码不能为空!'); $("#password").focus(); return false; } if(repassword==null || repassword==''){ alert('确认密码不能为空!'); $("#repassword").focus(); return false; }else if(password != repassword){ alert('两次密码输入不一致!'); $("#repassword").focus(); return false; } return true; } </script> <style type="text/css"> .demo {width:250px;height:40px;display:none; } </style> <body> <p id="content"> <table> <tr> <td>用 户 名:</td> <td> <input type="text" name="name" id="name" /> </td> </tr> <tr> <td>密 码:</td> <td> <input type="password" name="password" id="password"/> </td> </tr> <tr> <td>确认密码:</td> <td> <input type="password" name="repassword" id="repassword"/> </td> </tr> <tr> <td colspan="2" align="CENTER"> <BR><input type="button" id="regist" value="注册"/> </td> </tr> </table> </p> </body> </html>
ここにすべての JSP コードがあります!
全ポイントにコードが付いているので読むのに便利です!
Javaコードの使用部分を投稿します!なぜなら、コントロール層の中にはたくさんのものが含まれているからです。
@ResponseBody @RequestMapping(value = "ajaxdemo" , method = RequestMethod.POST) public JSONObject ajaxdemo(HttpServletRequest req){ // System.out.println(name); JSONObject jsonObject = new JSONObject(); jsonObject.put("demo", "demo"); System.out.println("-----"); String parameter = req.getParameter("name"); System.out.println(parameter); String parameter2 = req.getParameter("password"); System.out.println(parameter2); return jsonObject; }
これはリクエストを使用してデータを受信しています。データを受信する別の方法もあります。
@RequestBody
jspページは問題なく使用できますが、受信したデータは結合されます
@ResponseBody @RequestMapping(value = "ajaxdemo" , method = RequestMethod.POST) public JSONObject ajaxdemo(@RequestBody String req){ System.out.println(req); JSONObject jsonObject = new JSONObject(); jsonObject.put("demo", "demo"); System.out.println("-----"); // String parameter = req.getParameter("name"); // System.out.println(parameter); // String parameter2 = req.getParameter("password"); // System.out.println(parameter2); return jsonObject; }
以上がajax がフロントエンドとバックエンド間のシンプルなデータ対話を実現する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。