Ajax入门程序一--------用户名校验

前提:什么是Ajax?
    AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
Ajax的本质:
    和刷新页面一样都是向服务器发送了一个http请求获得结果并进行显示(超链接或者提交表单),但不同的是ajax不需要刷新整个界面,只需要实现浏览器提供的接口创建一个XMLHttpRequest对象,使用现有标准的新方法即可实现向服务器发送http请求!

使用Ajax只需要理清楚以下几点:

  1. 请求url(服务器端路径)
  2. 请求方法:get or post
  3. 请求数据(请求数据格式、数据是自定义还是通过JS界面获取)
  4. 响应数据返回(响应数据格式、如何接收并解析数据)
  5. 响应数据的显示(通过JS在html界面哪里显示)

 


1.入门程序:用户名校验

  • 浏览器端: register.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<script>
function ajaxFunction(){
	   var xmlHttp;
	   try{ // Firefox, Opera 8.0+, Safari
	        xmlHttp=new XMLHttpRequest();
	    }
	    catch (e){
		   try{// Internet Explorer
		         xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		      }
		    catch (e){
		      try{
		         xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		      }
		      catch (e){}
		      }
	    }

		return xmlHttp;
}
function showHint(str)
{
  //1.创建xmlhttprequest对象
  var request = ajaxFunction();
  //判断输入是否为空
  if (str.length==0)
  { 
    document.getElementById("txtHint").innerHTML="";
    return;
  }
  //4.获取响应数据
  request.onreadystatechange=function()
  {
	//4.1添加监听
    if (request.readyState==4 && request.status==200)
    {
    	 //4.2获取响应消息并显示在界面
    	 document.getElementById("txtHint").innerHTML=request.responseText;
    }
  }
  //2.设置请求:
  /* 参数一:请求类型GET or POST
   * 参数二:请求的路径
   * 参数三:是否异步,一般true,表示发送后就不再去管而去做其他事
   */
  request.open("POST","checkname.jsp?",true);
  //2.1如果使用的是post方式带数据,那么 这里要添加头, 说明提交的数据类型是一个经过url编码的form表单数据
  request.setRequestHeader("Content-type","application/x-www-form-urlencoded");
  //3.发送请求:post请求需要在send方法里面写请求数据。 
  request.send("name="+str);
}
</script>
<body>
	<h3>用户注册:</h3>
	<form action=""> 
	输入姓名: <input type="text" id="txt1" onkeyup="showHint(this.value)" />
	</form>
	<p>提示信息: <span id="txtHint"></span></p> 
</body>
</html>
  • 服务器端: checkname.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%
	String name = request.getParameter("name");
	//模拟服务器端校验
	if(name.equals("cyn")){
		//存在用户名
		out.println("<font color='red'>用户名已存在!</font>");
	}
	else{
		//不存在用户名
		out.println("<font color='green'>用户名可用!</font>");
	} 
%>
</body>
</html>
  • 运行结果: 

2.总结:

  • 首先必须根据浏览器版本的不同创建Ajax引擎
var xmlhttp;
if (window.XMLHttpRequest)
  {
    // IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
    xmlhttp=new XMLHttpRequest();
  }
  else
  {
    // IE6, IE5 浏览器执行代码
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
  • open()方法只是初始化http请求参数,并不真正发送http请求。可以调用send()方法发送http请求。
  • 根据http请求的状态,自动调用相应处理函数接收数据并在前台界面进行显示操作:xmlhttp.onreadystatechange=function(){}。
  • XMLHttpRequest的属性responseText自动封装了接收到的相应文本的所有内容!

 

ajax的基本流程可以概括为:

    页面上js脚本实例化一个XMLHttpRequest对象,设置好服务器端的url、必要的查询参数、回调函数之后,向服务器发出请求,服务器在处理请求之后将处理结果返回给页面,触发事先绑定的回调函数。这样,页面脚本如果想要改变一个区域的内容,只需要通过ajax向服务器获取与该区域有关的少量数据,在回调函数中将该区域的内容替换掉即可,不需要刷新整个页面。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
4S店客户管理小程序-毕业设计,基于微信小程序+SSM+MySql开发,源码+数据库+论文答辩+毕业论文+视频演示 社会的发展和科学技术的进步,互联网技术越来越受欢迎。手机也逐渐受到广大人民群众的喜爱,也逐渐进入了每个用户的使用。手机具有便利性,速度快,效率高,成本低等优点。 因此,构建符合自己要求的操作系统是非常有意义的。 本文从管理员、用户的功能要求出发,4S店客户管理系统中的功能模块主要是实现管理员服务端;首页、个人中心、用户管理、门店管理、车展管理、汽车品牌管理、新闻头条管理、预约试驾管理、我的收藏管理、系统管理,用户客户端:首页、车展、新闻头条、我的。门店客户端:首页、车展、新闻头条、我的经过认真细致的研究,精心准备和规划,最后测试成功,系统可以正常使用。分析功能调整与4S店客户管理系统实现的实际需求相结合,讨论了微信开发者技术与后台结合java语言和MySQL数据库开发4S店客户管理系统的使用。 关键字:4S店客户管理系统小程序 微信开发者 Java技术 MySQL数据库 软件的功能: 1、开发实现4S店客户管理系统的整个系统程序; 2、管理员服务端;首页、个人中心、用户管理、门店管理、车展管理、汽车品牌管理、新闻头条管理、预约试驾管理、我的收藏管理、系统管理等。 3、用户客户端:首页、车展、新闻头条、我的 4、门店客户端:首页、车展、新闻头条、我的等相应操作; 5、基础数据管理:实现系统基本信息的添加、修改及删除等操作,并且根据需求进行交流信息的查看及回复相应操作。
现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本微信小程序医院挂号预约系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此微信小程序医院挂号预约系统利用当下成熟完善的SSM框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的MySQL数据库进行程序开发。微信小程序医院挂号预约系统有管理员,用户两个角色。管理员功能有个人中心,用户管理,医生信息管理,医院信息管理,科室信息管理,预约信息管理,预约取消管理,留言板,系统管理。微信小程序用户可以注册登录,查看医院信息,查看医生信息,查看公告资讯,在科室信息里面进行预约,也可以取消预约。微信小程序医院挂号预约系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值