最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

ajax简单实时验证功能实现方法

来源:动视网 责编:小采 时间:2020-11-27 20:07:29
文档

ajax简单实时验证功能实现方法

ajax简单实时验证功能实现方法:Ajax 即Asynchronous Javascript And XML(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。本文主要介绍了ajax实现简单实时验证功能,需要的朋友可以参考下,希望能帮助到大家。 Ajax = 异步 JavaScript 和
推荐度:
导读ajax简单实时验证功能实现方法:Ajax 即Asynchronous Javascript And XML(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。本文主要介绍了ajax实现简单实时验证功能,需要的朋友可以参考下,希望能帮助到大家。 Ajax = 异步 JavaScript 和


Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。本文主要介绍了ajax实现简单实时验证功能,需要的朋友可以参考下,希望能帮助到大家。

Ajax = 异步 JavaScript 和 XML(标准通用标记语言的子集)。

Ajax 是一种用于创建快速动态网页的技术。

Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。

通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

传统的网页(不使用 Ajax)如果需要更新内容,必须重载整个网页页面。

这是百度对它的定义,足够详细。
值得补充的一点是对异步的理解,异步是相对于同步来说的,在这里他们指的是服务器和浏览器的交互模式。

同步,每次请求发出之后,用户操作即被阻塞,必须要求返回响应后继续操作。而异步指的是发出请求后,用户无需等待响应,一切由ajax来实现,无需进行刷新网页就可以局部更新数据。提高了俩端的沟通效率。

来个小demo

做一个无刷新验证表单的demo,在对话框中输入用户名,在后台进行验证,使用ajax技术。

项目结构,使用maven构建

login.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<html>
<head>
 <title>login</title>
</head>
<body>

欢迎登陆:

 用户名:<input type="text" name="username" id="username" onchange="CallServer()"/>
 <!-- 显示提示信息 -->
 <p id="msg"></p>
 <!-- 在jsp页面中引入js,绝对路径的方式 -->
 <script src="${pageContext.request.contextPath}/js/main.js"></script>
</body>
</html>

main.js

alert("use ajax!")
//创建XMLHttpRequest对象,在不同浏览器
function createXMLHTTP() {
 if(window.XMLHttpRequest){
 // IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
 xmlhttp = new XMLHttpRequest();
 }else {
 // IE6, IE5 浏览器执行代码
 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
 }
 return xmlhttp;
}
function CallServer() {
 var username = document.getElementById("username").value;
 // 判断为空
 if ((username == null) || (username == "")) return;
 var xmlhttp = createXMLHTTP();
 // 构建请求url
 var url = "/loginServlet"+"?"+"username="+username;
 //状态码改变调用事件
 xmlhttp.onreadystatechange = function () {
 //正常返回,替换msg内容
 if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
 document.getElementById("msg").innerHTML = xmlhttp.responseText;
 }
 }
 //异步提交请求
 xmlhttp.open("GET",url,true);
 //发送请求
 xmlhttp.send();
}

web.xml

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
 <display-name>Archetype Created Web Application</display-name>
 <welcome-file-list>
 <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>
 <servlet>
 <servlet-name>loginServlet</servlet-name>
 <servlet-class>com.lbw.servlet.loginServlet</servlet-class>
 </servlet>
 <servlet-mapping>
 <servlet-name>loginServlet</servlet-name>
 <url-pattern>/loginServlet</url-pattern>
 </servlet-mapping>
</web-app>

loginServlet.java

package com.lbw.servlet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
/**
 * 后端使用Servlet处理请求
 */
public class loginServlet extends HttpServlet {
 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 //设置编码和响应头
 request.setCharacterEncoding("UTF-8");
 response.setContentType("text/xml;charset=UTF-8");
 response.setHeader("Cache-Control", "no-cache");
 //获取参数
 String username = request.getParameter("username");
 String msg = "";
 if("lbw".equals(username)){
 msg = "名称正确";
 }else {
 msg = "名称错误";
 }
 PrintWriter out = response.getWriter();
 out.println(msg);
 }
 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 doPost(request,response);
 }
}

开始测试

输入localhost:8888/login.jsp,弹出窗口

代表在jsp中引入js成功

在输入框输入测试数据

由Servlet中逻辑决定,返回错误信息

由Servlet中逻辑决定,返回成功信息

由此,初步实现了ajax异步请求,达到了实时验证的要求

一些小细节

1.在使用maven构建项目,注意Project Structure -> Facets,这里设置web.xml和webapp的路径,idea会使用到

2.在引入js时,注意使用相对路径的方式来进行映入,并且用到EL表达式要开启isELIgnored="false"·`避免没有解析。

文档

ajax简单实时验证功能实现方法

ajax简单实时验证功能实现方法:Ajax 即Asynchronous Javascript And XML(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。本文主要介绍了ajax实现简单实时验证功能,需要的朋友可以参考下,希望能帮助到大家。 Ajax = 异步 JavaScript 和
推荐度:
标签: 验证 简单 实现
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top