jQuery实现Ajax的几种方式

Ajax

异步刷新: 如果网页中某一个地方需要修改,异步刷新可以使:只刷新该需要修改的地方,而页面中其他地方 保持不变。例如:百度搜索框、视频的点赞。

定义一个jsp页面,前端输入一个名字,jquery调用servlet进行查询,将查询的结果返回页面进行响应。

  1. ajax ,get,post
    jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title> 
    <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
    <script type="text/javascript"> 
        function register(){
            var $name = $("#name").val();
            /************************ajax*****************************/
            $.ajax({
                url:"/queryUser",
                options:"post",
                data:"name="+$name,
                success:function (msg) {
                    if (msg == "true"){
                        alert("查询成功");
                    }else {
                        alert("查询失败");
                    }
                },
                error:function () {
                    alert("系统异常!");
                }
            })
            /************************post*****************************/
            /*get与post类似*/
           $.post({
                url:"/queryUser",
                data:"name="+$name,
                success:function (msg) {
                    if (msg == "true"){
                        alert("查询成功");
                    }else {
                        alert("查询失败");
                    }
                }
            }) 
    </script>
</head>
<body>
    姓名:<input id="name"/><br/>
    查询:<input type="submit" onclick="register()"><br/>
</body>
</html>

servlet:


@WebServlet( "/queryUser")
public class ajax extends HttpServlet {
    protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html;charset=utf-8");
        request.setCharacterEncoding("utf-8");
        String name = request.getParameter("name");
        PrintWriter writer = response.getWriter(); 
        if ("root".equals(name)){
            writer.write("true"); 
         }else {
            writer.write("false"); 
        }
 }

2.getJSON

json的基本使用,key/value键值对形式。

 /*定义一个json*/
 var student = {"name":"zs","age":20};
 alert(student.name+"---->"+student.age);
 /*定义一个json数组,中括号[]括起来*/
 var students =[{"name":"zs","age":20}, {"name":"ls","age":22}];
 alert(students[0].name+"--->"+students[0].age);
 alert(students[1].name+"--->"+students[1].age);

jsp:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
    <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 
    <script type="text/javascript"> 
        function register(){
           var $name = $("#name").val(); 
           $.getJSON({
               url:"queryUser",
               //这里的data是以json的形式进行传递,非常便于传递参数
               data:{"name":$name},
               success:function (msg) { 
               		//返回的是一个json数据,key/value
                    if (msg.msg == "true"){
                        alert("查询成功");
                    }else {
                        alert("查询失败");
                    }
               }
           });
        }
    </script>
</head>
<body>
    姓名:<input id="name"/><br/>
    查询:<input type="submit" onclick="register()"><br/>
</body>
</html> 

servlet:


@WebServlet( "/queryUser")
public class ajax extends HttpServlet {
    protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html;charset=utf-8");
        request.setCharacterEncoding("utf-8");
        String name = request.getParameter("name");
        PrintWriter writer = response.getWriter();
		//给浏览器响应的是一个json数据
        String json= "{\"msg\": \"true\"}";
        String json1= "{\"msg\": \"false\"}"; 
        if ("root".equals(name)){ 
            writer.write(json);
         }else { 
            writer.write(json1);
        }
    } 
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值