Ajax实现异步加载数据


Posted in Javascript onNovember 17, 2021

本文实例为大家分享了Ajax实现异步加载数据的具体代码,供大家参考,具体内容如下

项目结构如下 (需要导入一个JQuery的包,配置文件web.xml和springmvc-servlet.xml,不在写了,不知道的可以看一下我其它的博客,上边都有)

Ajax实现异步加载数据

异步加载数据

首先创建一个实体类

package com.zkw.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data @AllArgsConstructor @NoArgsConstructor
public class User  {
    private String name;
    private int age;
    private String sex;
}

然后创建一个Controller

package com.zkw.controller;

import com.zkw.pojo.User;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

@RestController
public class AjaxController {

    @RequestMapping("/a2")
    public List<User> test2(){
        List<User> userList = new ArrayList<User>();
        userList.add(new User("七七",1,"女"));
        userList.add(new User("琪琪",1,"女"));
        userList.add(new User("琦琦",1,"女"));
        return userList;
    }
}

最后创建一个jsp页面

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Ajax异步数据加载</title>
    <script src="${pageContext.request.contextPath}/static/js/jquery-3.6.0.js"></script>
    <script>
        $(function () {
            $("#btn").click(function () {
                $.post("${pageContext.reques-t.contextPath}/a2",function (data) {
                    var html="";
                    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>
        <thead>
            <tr>
                <td>姓名</td>
                <td>年龄</td>
                <td>性别</td>
            </tr>
        </thead>
        <tbody id="content"></tbody>
    </table>
</body>
</html>

结果如下

Ajax实现异步加载数据

用户登录的异步验证

先创建一个Controller

package com.zkw.controller;

import com.zkw.pojo.User;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

@RestController
public class AjaxController {
    @RequestMapping("/a3")
    public String test3(String username,String pwd){
        String msg ="";
        if (username != null){
            if (username.equals("admin")){
                msg = "ok";
            }else{
                msg = "用户名不存在";
            }
        }

        if (pwd != null){
            if (pwd.equals("123456")){
                msg = "ok";
            }else{
                msg = "密码输入错误";
            }
        }

        return msg;
    }
}

然后创建一个jsp页面

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>用户登录</title>
    <script src="${pageContext.request.contextPath}/static/js/jquery-3.6.0.js"></script>
    <script>
       function a1() {
            $.post({
                url:"${pageContext.request.contextPath}/a3",
                data:{"username":$("#username").val()},
                success(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(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="username" οnblur="a1()">
        <span id="userInfo"></span>
    </p>

    <p>
        密码名:<input type="password" id="pwd" οnblur="a2()">
        <span id="pwdInfo"></span>
    </p>

</body>
</html>

结果如下

Ajax实现异步加载数据

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript Sort 表格排序
Oct 31 Javascript
setTimeout与setInterval在不同浏览器下的差异
Jan 24 Javascript
JavaScript里实用的原生API汇总
May 14 Javascript
JS实现下拉菜单赋值到文本框的方法
Aug 18 Javascript
图片旋转、鼠标滚轮缩放、镜像、切换图片js代码
Dec 13 Javascript
浅谈JS中的三种字符串连接方式及其性能比较
Sep 02 Javascript
使用jquery给指定的table动态添加一行、删除一行
Oct 13 Javascript
JS数组返回去重后数据的方法解析
Jan 03 Javascript
Node.js中文件操作模块File System的详细介绍
Jan 05 Javascript
详解webpack分包及异步加载套路
Jun 29 Javascript
详解vue-meta如何让你更优雅的管理头部标签
Jan 18 Javascript
JavaScript实现简单的隐藏式侧边栏功能示例
Aug 31 Javascript
36个正则表达式(开发效率提高80%)
Nov 17 #Javascript
Javascript 解构赋值详情
Nov 17 #Javascript
javascript Number 与 Math对象的介绍
Nov 17 #Javascript
javascript条件式访问属性和箭头函数介绍
Nov 17 #Javascript
JavaScript 对象创建的3种方法
Nov 17 #Javascript
JavaScript 中for/of,for/in 的详细介绍
Nov 17 #Javascript
JavaScript高级程序设计之基本引用类型
Nov 17 #Javascript
You might like
防止MySQL注入或HTML表单滥用的PHP程序
2009/01/21 PHP
php页面消耗内存过大的处理办法
2013/03/18 PHP
php使用异或实现的加密解密实例
2013/09/04 PHP
PHP 返回13位时间戳的实现代码
2016/05/13 PHP
PHP CodeIgniter分页实例及多条件查询解决方案(推荐)
2017/05/20 PHP
浅谈JavaScript中面向对象技术的模拟
2006/09/25 Javascript
javascript HTMLEncode HTMLDecode的完整实例(兼容ie和火狐)
2009/06/02 Javascript
Javascript中的this绑定介绍
2011/09/22 Javascript
前台js改变Session的值(用ajax实现)
2012/12/28 Javascript
javascript中tostring()和valueof()的用法及两者的区别
2015/11/16 Javascript
基于Jquery和CSS3制作数字时钟附源码下载(CSS3篇)
2015/11/24 Javascript
js表单提交和submit提交的区别实例分析
2015/12/10 Javascript
50 个 jQuery 插件可将你的网站带到另外一个高度
2016/04/26 Javascript
JavaScript从数组的indexOf()深入之Object的Property机制
2016/05/11 Javascript
jquery获取img的src值的简单实例
2016/05/17 Javascript
Bootstrap编写一个同时适用于PC、平板、手机的登陆页面
2016/06/30 Javascript
bootstrap table复杂操作代码
2016/11/01 Javascript
js获取当前时间(昨天、今天、明天)
2016/11/23 Javascript
jQuery插件zTree实现删除树子节点的方法示例
2017/03/08 Javascript
20行js代码实现的贪吃蛇小游戏
2017/06/20 Javascript
Vue2.0+ElementUI实现表格翻页的实例
2017/10/23 Javascript
通过说明与示例了解js五种设计模式
2019/06/17 Javascript
Layui实现数据表格默认全部显示(不要分页)
2019/10/26 Javascript
vue使用require.context实现动态注册路由
2020/12/25 Vue.js
Python+Opencv识别两张相似图片
2020/03/23 Python
Python实现求笛卡尔乘积的方法
2017/09/16 Python
python中字符串内置函数的用法总结
2018/09/13 Python
Python中时间datetime的处理与转换用法总结
2019/02/18 Python
Python 一键获取百度网盘提取码的方法
2019/08/01 Python
pyqt5 QScrollArea设置在自定义侧(任何位置)
2019/09/25 Python
CSS3属性box-shadow使用详细教程
2012/01/21 HTML / CSS
耐克巴西官方网站:Nike巴西
2016/08/14 全球购物
一年级评语大全
2014/04/23 职场文书
重阳节座谈会主持词
2015/07/03 职场文书
教师节祝酒词
2015/08/11 职场文书
Java Spring Boot请求方式与请求映射过程分析
2022/06/25 Java/Android