Ajax学习第五节_ajaxJquery

来源:互联网 发布:c语言读取一行字符串 编辑:程序博客网 时间:2024/06/06 05:02

使用JQuery进行Ajax的请求,JQuery封装了Ajax,所以使用起来特别的方便。现在讲解一下JQuery使用ajax的方法。

运行效果:

    

百度云源代码下载:http://pan.baidu.com/s/1sliltO5


Jsp页面关键代码

//验证用户名是否可以使用function checkUserName() {//获取用户名var userName = $("#userName").val();//请求的urlvar dataUrl = "Regedit";//要提交的参数如果是对象可以:"user.userName":userName提交到actionvar params = {"userName" : userName};$.ajax({async : true,//设置为异步,如果设置为同步,必须等ajax请求完毕之后,再执行进行下面的操作url : dataUrl,//请求的urldata : params,//要传递的参数dataType : "json",//返回的数据格式为jsoncache : false,//不设置缓存type : "POST",//提交方式post//请求出错调用的方法error : function(textStatus, errorThrown) {alert("ajax请求失败!");},//请求之前的方法beforeSend : function() {//alert("请求前执行的方法!通常放一张加载的图片");},//请求成功的方法,data为返回的数据success : function(data, textStatus) {$("#msg").html("姓名:"+data.userName + "----年龄:" + data.age);}});}

Servlet关键代码

/** * @MethodName:doPost * @Description:接收post请求的方法 * @param request * @param response * @throws ServletException * @throws IOException * @author:徐半仙儿 * @date:Apr 20, 201610:13:16 AM */protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {// 设置返回数据的编码response.setContentType("text/json;charset=utf-8");// 接收传递过来的数据String userName = URLDecoder.decode(request.getParameter("userName"), "UTF-8");// 实例化PrintWriter,用于向前台打印数据PrintWriter out = response.getWriter();// 模仿数据库请求,假如数据库中有个用户名为xukaiqiangif (userName.equals("xukaiqiang")) {// 以json形式返回数据到前台User user = new User(1, "xukaiqiang1234", 25);Utils.printInfo(user, response);} else {// 以json形式返回数据到前台User user1 = new User(1, "xukaiqiang", 22);Utils.printInfo(user1, response);}// 关闭流out.close();}

工具类Utils关键代码

public static String printInfo(Object object, HttpServletResponse response) {//如果是Struts2这里可以使用ServletActionContext.getResponse();获取HttpServletResponse对象Gson gson = new Gson();String result = gson.toJson(object);response.setContentType("text/json; charset=utf-8");response.setHeader("Cache-Control", "no-cache"); // 取消浏览器缓存PrintWriter out = null;try {out = response.getWriter();} catch (IOException e) {e.printStackTrace();}out.print(result);out.flush();out.close();return null;}

0 0
原创粉丝点击