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 相关文章推荐
让焦点自动跳转
Jul 01 Javascript
基于jquery的15款幻灯片插件
Apr 10 Javascript
使用AngularJS实现可伸缩的页面切换的方法
Jun 19 Javascript
实例讲解使用原生JavaScript处理AJAX请求的方法
May 10 Javascript
JavaScript中关键字 in 的使用方法详解
Oct 17 Javascript
jquery实现拖动效果(代码分享)
Jan 25 Javascript
JavaScript实现向select下拉框中添加和删除元素的方法
Mar 07 Javascript
vue裁切预览组件功能的实现步骤
May 04 Javascript
vue webpack开发访问后台接口全局配置的方法
Sep 18 Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
Feb 01 Javascript
vue 检测用户上传图片宽高的方法
Feb 06 Javascript
一篇文章带你浅入webpack的DLL优化打包
Feb 20 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
php中一个有意思的日期逻辑处理
2012/03/25 PHP
php获取网站百度快照日期的方法
2015/07/29 PHP
jQuery 第二课 操作包装集元素代码
2010/03/14 Javascript
js change,propertychange,input事件小议
2011/12/20 Javascript
cookie中的path与domain属性详解
2013/12/18 Javascript
jQuery中index()的用法分析
2014/09/05 Javascript
javascript委托(Delegate)blur和focus用法实例分析
2015/05/26 Javascript
JS实现跟随鼠标的链接文字提示框效果
2015/08/06 Javascript
jQuery中常用的遍历函数用法实例总结
2015/09/01 Javascript
iscroll-probe实现下拉刷新和下拉加载效果
2017/06/28 Javascript
Vue.use源码学习小结
2018/06/20 Javascript
5分钟学会Vue动画效果(小结)
2018/07/21 Javascript
js String.prototype.trim字符去前后空格的扩展
2020/08/23 Javascript
python将文本转换成图片输出的方法
2015/04/28 Python
Python判断某个用户对某个文件的权限
2016/10/13 Python
Python使用回溯法子集树模板获取最长公共子序列(LCS)的方法
2017/09/08 Python
Python金融数据可视化汇总
2017/11/17 Python
Python实现将json文件中向量写入Excel的方法
2018/03/26 Python
解决安装python库时windows error5 报错的问题
2018/10/21 Python
利用python GDAL库读写geotiff格式的遥感影像方法
2018/11/29 Python
Python小白必备的8个最常用的内置函数(推荐)
2019/04/03 Python
12个Python程序员面试必备问题与答案(小结)
2019/06/24 Python
Flask中endpoint的理解(小结)
2019/12/11 Python
Jupyter Notebook 实现正常显示中文和负号
2020/04/24 Python
详解python tcp编程
2020/08/24 Python
CSS3动画和HTML5新特性详解
2020/08/31 HTML / CSS
美国最便宜的旅游网站:CheapTickets
2017/07/09 全球购物
Myprotein意大利官网:欧洲第一运动营养品牌
2018/11/22 全球购物
Zipadee-Zip襁褓过渡毯:Sleeping Baby
2018/12/30 全球购物
星空联盟C# .net笔试题
2014/12/05 面试题
大学生自我评价范文分享
2014/02/21 职场文书
小学生国庆演讲稿
2014/09/05 职场文书
2014年中职班主任工作总结
2014/12/16 职场文书
个人创业事迹材料
2014/12/30 职场文书
《鸡兔同笼》教学反思
2016/02/19 职场文书
导游词书写之黄山
2019/08/06 职场文书