Ajax,  励志做一名Java全干工程师

$(励志做一名Java全干工程师)

前言:JS,JSP,JQ区别?

  JSP:JavaServer pages,他是作用于后端的技术,基于java的语言,混合了html,动态的调用html语句,实现动态的效果

  JS:Java script,是前端的脚本语言,是动态脚本语言,就像php一样,ajax就是通过JS+xml实现的

  JO:Java Query,是js的库,里面含有大量的。也就是说ajax是通过JQ+xml实现的

  

  JS面试题方面:

      函数:闭包 ()()--->自己调用自己

      Dom:document,操作文档对象

          id,name,tag

          create,remove

      Bom:操作Bom元素,浏览器对象模型,

          Window,操作浏览器的事件

 

  ES6:新特性,let

    let,一般用于遍历上,让其所修饰的参数变成局部变量

    var,在没有let前,用var,它不区分范围,全局变量

    wackpace:打包方式

 

一,Ajax实现过程

  既然是刚接触必然先画个图熟悉一下

 

 

 流程图画出来就基本掌握json的方法了

下面在说一遍流程:

1.用户在输入框输入信息,通过失去焦点的方法,让用户的信息实时的自动提交

2.通过Ajax的方式(实现Ajax需调用JQ的库)去获得这个事件(Ajax.post() 与$.post()一样)

3.$.post({

  url:"${pageContext.request.context}/所要连接的Controller方法映射地址",

  data:{"name":${"#username"}.val()}, name:对应的是controller中所映射的方法的参数,注意,username前必须加#,作用,锁住用户携带的参数,才能给controller层的方法传参,

  success:function(data){}  controller层的方法中通过特定业务需求的处理并放回了一个json给success,sucess也可在对此时的data再处理或直接返回给浏览器。

  })

 

好!下面看2个小demo就懂了

1.从后端获取一组json对线,并打印到前端

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>

    <title>Title</title>

    <script src="${pageContext.request.contextPath}/statics/jquery.js"></script>

    <script>
        <%--预加载--%>
        $(function (){
            <%--锁定元素--%>
            $("#btn").click(function (){
                <%--测试用的控制台输出--%>
                //console.log("111");
                /*
                $.post(url,param[可以省略],success)
                * */
                $.post("${pageContext.request.contextPath}/a2",function (data){
                    //console.log(data);
                    var html="";

                    /*let,es6新特性,让它所修饰的i尽在当前模块生效,局部变量
                    *  以前js是没有区域约束,用var修饰的参数在哪里都会被调用
                    **/
                    for (let i = 0; i <data.length; i++) {
                        html+="<tr>"+
                            "<td>"+data[i].name+"</td>"+
                            "<td>"+data[i].age+"</td>"+
                            "<td>"+data[i].sex+"</td>"+
                            "</tr>"
                    }

                    $("#content").html(html);
                });

            });
        });

    </script>

</head>
<body>

<input type="button" value="加载数据" id="btn">
<table>
    <tr>
        <td>姓名</td>
        <td>年龄</td>
        <td>性别</td>
    </tr>
    <tbody id="content" >
        <%--数据:后台--%>

    </tbody>
</table>


</body>
</html>

 

 

  

  

 

2.登录验证,且错误有提示(利用Ajax实现)

<%--
  Created by IntelliJ IDEA.
  User: 33422
  Date: 2020/11/15
  Time: 19:46
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>

    <script src="${pageContext.request.contextPath}/statics/jquery.js"></script>

    <script>
        function a1(){
            $.post({
                url:"${pageContext.request.contextPath}/a3",
                data:{"name":$("#name").val()},
                success:function (data){
                    if(data.toString()==='ok'){
                        $("#userInfo").css("color","green");
                    }else {
                        $("#userInfo").css("color","red");
                    }

                    $("#userInfo").html(data);
                }
            })
        }

        function a2(){
            $.post({
                url:"${pageContext.request.contextPath}/a3",
                data:{"pwd":$("#pwd").val()},
                success:function (data){
                    if(data.toString()==='ok'){
                        $("#pwdInfo").css("color","green");
                    }else {
                        $("#pwdInfo").css("color","red");
                    }

                    $("#pwdInfo").html(data);
                }
            })
        }
    </script>

</head>
<body>

<p>
    用户名:<input type="text" id="name" onblur="a1()">
    <span id="userInfo"></span>
</p>

<p>
    密码:<input type="text" id="pwd" onblur="a2()">
    <span id="pwdInfo"></span>
</p>

</body>
</html>

 

 

 

 

posted @ 2020-11-15 21:33  凸然猿  阅读(221)  评论(0编辑  收藏  举报