当前位置: 首页 > news >正文

Day17_1--AJAX学习之GET/POST传参

AJAX 简介

AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。其实AJAX就可以理解为就是JS。通过AJAX也就实现了前后端分离,前端只写页面,后端生成数据!

现在开始通过实例学习:

1--GET传参

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<script>function ajax2() {//0:获取input内容let user = document.querySelector(".user").value;let pwd = document.querySelector(".pwd").value;//1:创建ajax对象let xmlHttpRequest = new XMLHttpRequest();//2:配置后端请求--get请求参数用?和&来传参数xmlHttpRequest.open("get", "/stage1_war_exploded/ajax2?user="+user+"&pwd="+pwd, true)//3:发送请求xmlHttpRequest.send();//4:监听数据是否请求成功xmlHttpRequest.onreadystatechange = function () {//5:如果服务器成功解析数据则readyState=4,如果后端成功返回数据则state=200if (xmlHttpRequest.readyState == 4 && xmlHttpRequest.status == 200) {//6:获取后端数据let data = xmlHttpRequest.responseText;//7:将数据插入前端页面document.getElementById("show").innerHTML = data;}}}</script>
<body>
<div id="show" style="border: 1px red; width: 200px;height: 100px">
</div>
账号<input type="text" class="user"><br>
密码<input type="text" class="pwd"><br>
<button onclick="ajax2()">提交</button>//当点击按钮后,调用ajax2()方法
</body>
</html>

2--后端生产数据

@WebServlet("/ajax2")
public class ajax2 extends HttpServlet {@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//设置编码req.setCharacterEncoding("utf-8");resp.setContentType("text/html;charset=utf-8");//后端获取get方式的参数就用getParameterString user = req.getParameter("user");String pwd = req.getParameter("pwd");PrintWriter writer = resp.getWriter();//将后端数据返回给前端writer.write("后端数据来了"+user+"-----"+pwd);}
}

3--POST传参

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<script>function ajax2() {//0:获取input内容let user = document.querySelector(".user").value;let pwd = document.querySelector(".pwd").value;//1:创建ajax对象let xmlHttpRequest = new XMLHttpRequest();//2:配置后端请求xmlHttpRequest.open("post", "/stage1_war_exploded/ajax2", true);//3:发送请求//3_1:post请求必须设置请求头--一个单词都不能错:固定写法xmlHttpRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");//3_2:发送请求和post参数———————其他地方和get相同xmlHttpRequest.send("user=" + user + "&pwd=" + pwd);//4:监听数据是否请求成功xmlHttpRequest.onreadystatechange = function () {//5:如果服务器成功解析数据则readyState=4,如果后端成功返回数据则state=200if (xmlHttpRequest.readyState == 4 && xmlHttpRequest.status == 200) {//6:获取后端数据let data = xmlHttpRequest.responseText;//7:将数据插入前端页面document.getElementById("show").innerHTML = data;}}}
</script>
<body>
<div id="show" style="border: 1px red; width: 200px;height: 100px">
</div>
账号<input type="text" class="user"><br>
密码<input type="text" class="pwd"><br>
<button onclick="ajax2()">提交</button>
</body>
</html>

http://www.lryc.cn/news/414405.html

相关文章:

  • golang国内proxy设置
  • 全网最适合入门的面向对象编程教程:31 Python的内置数据类型-对象Object和类型Type
  • 【mongodb】mongodb副本集的搭建和使用
  • Java后端面试复习7.24
  • 前端 HTML 概述
  • 探索Thymeleaf:用动态Web模板引擎打造吸引人的用户界面(SpringBoot的html详解)
  • 视频教程 - 自研Vue3 Tree组件高级功能:虚拟滚动新增节点实现自动滚动
  • 职业生涯阶段总结3:转眼毕业三年
  • 项目经理面试总结
  • (免费领源码)java#springboot#mysql大学校园旧物捐赠网站 25109-计算机毕业设计项目选题推荐
  • Java 设计模式之单例模式
  • Linux系统驱动(二)字符设备驱动
  • Day29 | 动态规划 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯
  • 【开源移植】MultiButton_小型按键驱动模块移植
  • 【Python系列】Python 字典合并
  • C# 设计模式之装饰器模式
  • 【uniapp离线打包】(基于Android studio)
  • 稳稳的年化10%,多任务时序动量策略——基于pytorch的深度学习策略(附python代码)
  • C++分析AVL树
  • aurora8b10b ip的使用(framing接口下的数据回环测试)
  • 如何通过OpenCV判断图片是否包含在视频内?
  • 大数据基础:Spark重要知识汇总
  • Executable Code Actions Elicit Better LLM Agents
  • 循环结构(三)——do-while语句
  • pandas 或筛选
  • 工具(1)—截屏和贴图工具snipaste
  • 【从零开始一步步学习VSOA开发】快速体验SylixOS
  • Ansible自动化:简化IT基础设施管理的艺术
  • 【Rust光年纪】探索Rust语言中的WebSocket库和框架:优劣一览
  • HTML 基础结构