IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> Ajax知识点 -> 正文阅读

[JavaScript知识库]Ajax知识点

通过AJAX(?Asynchronous?JavaScript?And?XML) 实现异步刷新

问题:如何建立一个JSP页面,步骤过程?这里留疑? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

——已解决,利用eclipse,收藏问题里有详细答题

一、认识AJAX

用于用户名校验的页面

准备一个JSP页面,叫做checkName.jsp用于校验提交的用户名是否存在
如果提交的用户名是abc就打印存在,否则就可以使用

<html>
<a href="https://how2j.cn/study/checkName.jsp?name=abc">checkName.jsp?name=abc</a>
<br>
<a href="https://how2j.cn/study/checkName.jsp?name=def">checkName.jsp?name=def</a>
</html>
不使用AJAX 通过刷新页面验证账号是否存在<form action="https://how2j.cn/study/checkName.jsp">
?
输入账号 <input name="name" type="text" value="abc">
?
<input type="submit" value="验证账号是否存在">
?
</form>
使用AJAX 通过无刷新验证账号是否存在<span>输入账号 :</span>
<input id="name" name="name" οnkeyup="check()" type="text">?
<span id="checkResult"></span>
?
<script>
var xmlhttp;
function check(){
? var name = document.getElementById("name").value;
? var url = "https://how2j.cn/study/checkName.jsp?name="+name;
?
? xmlhttp =new XMLHttpRequest();
? xmlhttp.onreadystatechange=checkResult; //响应函数
? xmlhttp.open("GET",url,true); ? //设置访问的页面
? xmlhttp.send(null); ?//执行访问
}
?
function checkResult(){
? if (xmlhttp.readyState==4 && xmlhttp.status==200)
? ? document.getElementById('checkResult').innerHTML=xmlhttp.responseText;
??
}?
</script>

二、 分布分析AJAX每个步骤(学习与网页,已标注)

AJAX 请求和相应图示

创建XHR

创建XHR对象?XMLHttpRequest
XHR对象是一个javascript对象,它可以在用户没有感觉的情况下,就像背后运行的一根小线程一般,悄悄的和服务器进行数据交互
AJAX就是通过它做到无刷新效果的

<script>
var xmlhttp =new XMLHttpRequest();
document.write(xmlhttp);
</script>
设置响应函数

XHR对象的作用是和服务器进行交互,所以既会发消息给服务器,也能接受服务器返回的响应。
当服务器响应回来的时候,调用怎么处理呢?
通过 xmlhttp.onreadystatechange=checkResult 就可以指定用checkResult 函数进行处理。

设置并发出请求

通过open函数设置背后的这个小线程,将要访问的页面url ,在本例中就是? ? /study/checkName.jsp

xmlhttp.open("GET",url,true);


通过send函数进行实际的访问

xmlhttp.send(null);


null表示没有参数,因为参数已经通过“GET" 方式,放在url里了。
只有在用"POST",并且需要发送参数的时候,才会使用到send。
类似这样:
xmlhttp.send("user="+username+"&password="+password)

处理响应信息

在checkResult 函数中处理响应

function checkResult(){

if (xmlhttp.readyState==4 && xmlhttp.status==200)

document.getElementById('checkResult').innerHTML=xmlhttp.responseText;

}

xmlhttp.readyState?4 表示请求已完成
xmlhttp.status?200 表示响应成功
xmlhttp.responseText; 用于获取服务端传回来的文本
document.getElementById('checkResult').innerHTML?设置span的内容为服务端传递回来的文本

checkName.jsp

先简单了解一下,后面学习JSP,现在不怎么懂

<%@ page language="java" contentType="text/html; charset=UTF-8"
? ? pageEncoding="UTF-8" isELIgnored="false"%>
?
<%
? ? String name = request.getParameter("name");
? ? ?
? ? if("abc".equals(name))
? ? ? ? out.print("<font color='red'>已经存在</font>");
? ? else
? ? ? ? out.print("<font color='green'>可以使用</font>");
? ? ?
%>

?

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-12-10 10:58:30  更:2021-12-10 11:00:01 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 8:52:11-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码