背景

  • Asynchronous JavaScript And XML:异步js和XML,可实现异步刷新

用途

  • 验证提交的用户名是否已存在
  • 不使用AJAX,需要提交数据后,刷新页面来验证
  • 使用AJAX,可实现实时验证

执行过程

  • 创建XHR对象(XML Http Request)

    • var xmlhttp =new XMLHttpRequest();
    • XHR对象是一个js对象,可自动与服务器进行数据交互
  • 设置响应函数
    • xmlhttp.onreadystatechange=checkResult
    • 处理服务器返回的响应
  • 设置要访问的页面,并发出请求
    • xmlhttp.open("GET",url,true);
    • 设置要访问的页面(GET方式)
    • xmlhttp.send(null);
    • 访问页面
  • 处理响应消息
    • xmlhttp.responseText;
    • 获取服务器传回的文本

完整代码

网页

 1 <span>输入账号 :</span>
2 <input id="name" name="name" onkeyup="check()" type="text">
3 <span id="checkResult"></span>
4
5 <script>
6 var xmlhttp;
7 function check(){
8 var name = document.getElementById("name").value;
9 var url = "https://how2j.cn/study/checkName.jsp?name="+name;
10
11 xmlhttp =new XMLHttpRequest();
12 xmlhttp.onreadystatechange=checkResult; //响应函数
13 xmlhttp.open("GET",url,true); //设置访问的页面
14 xmlhttp.send(null); //执行访问
15 }
16
17 function checkResult(){
18 if (xmlhttp.readyState==4 && xmlhttp.status==200)
19 document.getElementById('checkResult').innerHTML=xmlhttp.responseText;
20
21 }
22
23 </script>

checkName.jsp

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
2 pageEncoding="UTF-8" isELIgnored="false"%>
3
4 <%
5 String name = request.getParameter("name");
6
7 if("abc".equals(name))
8 out.print("<font color='red'>已经存在</font>");
9 else
10 out.print("<font color='green'>可以使用</font>");
11
12 %>

[前端] AJAX的更多相关文章

  1. ExtJS是一种主要用于创建前端用户界面,是一个基本与后台技术无关的前端ajax框架。

    ExtJS是一种主要用于创建前端用户界面,是一个基本与后台技术无关的前端ajax框架.

  2. Web前端-Ajax基础技术(下)

    Web前端-Ajax基础技术(下) 你要明白ajax是什么,怎么使用? ajax,web程序是将信息放入公共的服务器,让所有网络用户可以通过浏览器进行访问. 浏览器发送请求,获取服务器的数据: 地址栏 ...

  3. Web前端-Ajax基础技术(上)

    Web前端-Ajax基础技术(上) ajax是浏览器提供一套的api,用于向服务器发出请求,接受服务端返回的响应,通过javascript调用,实现通过代码控制请求与响应,实现网络编程. ajax发送 ...

  4. 多选文件批量上传前端(ajax*formdata)+后台(Request.Files[i])---input+ajax原生上传

    1.配置Web.config;设定上传文件大小 <system.web> <!--上传1000M限制(https://www.cnblogs.com/Joans/p/4315411. ...

  5. 前端Ajax跨域解决方案

    业务场景: 前后端分离需要对接数据接口. 接口测试是在postman做的,今天才开始和前端对接,由于这是我第一次做后端接口开发(第一次嘛,问题比较多)所以在此记录分享我的踩坑之旅,以便能更好的理解,应 ...

  6. 前端Ajax通过设置 timeout 参数,轮询后台API

    因为我连接的数据库在台湾,相距较远,所以conn.Open()方法打开极慢.前端Ajax访问API时,API的数据还未返回,前端Ajax访问已经超时. 所以设置一个轮询,设置相隔多少秒之后进行一次查询 ...

  7. 前端ajax用post方式提交json数据给后端时,网络报错 415

    项目框架:spring+springmvc+mybatis 问题描述:前端ajax用post方式提交json数据给后端时,网络报错 415 前端异常信息:Failed to load resource ...

  8. 基于Flask开发网站 -- 前端Ajax异步上传文件到后台

    大家好,我是辰哥~ 辰哥最近利用空闲时间在写一个在线可视化平台,过程中也觉得一些技术还是比较有意思的,所以就以模块化的形式分享出来.如:从网页界面(前端)上传文件到服务器(后端). 放一下该模块的界面 ...

  9. express响应前端ajax请求

    后端其实并不需要知道前端发起的请求是不是ajax,后端只需要响应请求即可.例子: 前端这样写: $('button').on('click', function(event) { event.prev ...

  10. 前端AJAX传递数组给Springmvc接收处理

    前端传递数组后端(Spring)来接收并处理: <!DOCTYPE html> <html> <head> <meta charset="UTF-8 ...

随机推荐

  1. 隐藏页面元素 css

    一.前言 在平常的样式排版中,我们经常遇到将某个模块隐藏的场景 通过css隐藏元素的方法有很多种,它们看起来实现的效果是一致的 但实际上每一种方法都有一丝轻微的不同,这些不同决定了在一些特定场合下使用 ...

  2. 解决wampserver 服务无法启动

    如图左击选中apache的httpd.conf把文本中的80端口,改成未被占用的端口.

  3. CSS3新增了哪些新特性

    一.是什么 css,即层叠样式表(Cascading Style Sheets)的简称,是一种标记语言,由浏览器解释执行用来使页面变得更为美观 css3是css的最新标准,是向后兼容的,CSS1/2的 ...

  4. python基础(四):切片和索引

    Python中的序列有元组.列表和字符串,因此我们都可以通过索引和切片的方式,来获取其中的元素. 索引 Python中的索引,对于正向索引,都是从0开始的.但是对于反向索引,确实从-1开始的.如图所示 ...

  5. 「HTML+CSS」--自定义加载动画【016】

    前言 Hello!小伙伴! 首先非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出- 哈哈 自我介绍一下 昵称:海轰 标签:程序猿一只|C++选手|学生 简介:因C语言结识编程,随后转入计算机 ...

  6. Tomcat集群 Nginx负载均衡 shell脚本实时监控Nginx

    第一步,安装Tomcat 系统环境:Centos7 第1步:下载tomcat安装包 tomcat官网:https://tomcat.apache.org/ 第2步:安装包上传至linux中 第3步:下 ...

  7. Tree UVA - 548

      You are to determine the value of the leaf node in a given binary tree that is the terminal node o ...

  8. Javascript图片懒加载

    懒加载的意义 懒加载的主要目的是作为服务器前端的优化,减少请求数或延迟请求数. 懒加载的实现 1.第一种是纯粹的延迟加载,使用setTimeOut或setInterval进行加载延迟. 2.第二种是条 ...

  9. OOP-面向对象(三)

    魔术方法的使用 # 使用 __new__ 创建单态模式 class Singleton(): __obj = None def __new__(cls, *args, **kwargs): if cl ...

  10. vim 中文乱码解决

    问题如下: 在vim中编辑一个中文文本时 出现中文乱码情况 问题解决: 修改vimrc的脚本配置 编辑~/.vimrc文件,加上如下几行即可: set fileencodings=utf-8,ucs- ...