//ajax的jquery实现
function aclick(){
//alert("測试一");
var name = $("#userName").val();
//alert(name);
$.get("servlet/AjaxServlet?name=" + name ,null,back);
}

function back(data){
//alert(data);
$("#message").html(data);
}

//ajax的普通实现
var xmlHttpRequest = null;   //javascript的浏览器内置对象,XMLHttpRequest对象是当今全部AJAX和Web 2.0应用程序的技术基础
function ajaxRequest(){
//alert("測试二");
if(window.ActiveXObject) //IE浏览器,推断浏览器是否支持ActiveX控件
{
xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");   //创建XMLHttpRequest对象
}else if(window.XMLHttpRequest) //除IE以外的其它浏览器
{
xmlHttpRequest = new XMLHttpRequest();
}
if(null != xmlHttpRequest)
{
var v1 = document.getElementById("userName").value;
var v2 = document.getElementById("userName").value;

//准备向server发出一个请求

//get方式发出一个请求
xmlHttpRequest.open("GET","servlet/AjaxServlet?name=" + v1, true);

//post方式向server发出一个请求
//xmlHttpRequest.open("POST", "AjaxServlet",true);

//发生转台变换的时候调用回调函数
xmlHttpRequest.onreadystatechange = ajaxCallBack;

//使用post提交的时候 必须叫上例如以下代码
//xmlHttpRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

//向server发出一个请求
xmlHttpRequest.send("name="+v1+"&v2=" +v2);
}
}

function ajaxCallBack(){
if(xmlHttpRequest.readyState==4){
//ReadyState取值 描写叙述 
//0  描写叙述一种"未初始化"状态;此时,已经创建一个XMLHttpRequest对象。可是还没有初始化。

 
//1  描写叙述一种"发送"状态;此时,代码已经调用了XMLHttpRequest open()方法而且XMLHttpRequest已经准备好把一个请求发送到server。 
//2  描写叙述一种"发送"状态。此时,已经通过send()方法把一个请求发送到server端,可是还没有收到一个响应。

 
//3  描写叙述一种"正在接收"状态;此时,已经接收到HTTP响应头部信息,可是消息体部分还没有全然接收结束。

 
//4  描写叙述一种"已载入"状态;此时,响应已经被全然接收。

 
if(xmlHttpRequest.status==200){
var content = xmlHttpRequest.responseText;
document.getElementById("message").innerHTML = content;
}
}
}

Ajax的两种实现方式的更多相关文章

  1. ajax的两种使用方式

    一.Ajax概述 1.什么是同步,什么是异步 同步现象:客户端发送请求到服务器端,当服务器返回响应之前,客户端都处于等待 卡死状态 异步现象:客户端发送请求到服务器端,无论服务器是否返回响应,客户端都 ...

  2. Checkbox框全选操作,form表单提交与jquery ajax提交两种处理方式

    //1.jquery ajax<script type="text/javascript"> $(function(){ var basePath = $(" ...

  3. ajax的两种应用方式

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. Struts2实现ajax的两种方式

    基于Struts2框架下实现Ajax有两种方式,第一种是原声的方式,另外一种是struts2自带的一个插件. js部分调用方式是一样的: JS代码: function testAjax() { var ...

  5. Ajax中的get和post两种请求方式的异同

    Ajax中我们经常用到get和post请求.那么什么时候用get请求,什么时候用post方式请求呢? 在做回答前我们首先要了解get和post的区别.   1. get是把参数数据队列加到提交表单的A ...

  6. Ajax的get和post两种请求方式区别

    Ajax的get和post两种请求方式区别 (摘录):http://ip-10000.blog.sohu.com/114437748.html 解get和post的区别. 1. get是把参数数据队列 ...

  7. easyui datagride 两种查询方式

    easyui datagride 两种查询方式function doReseach() { //$('#tt').datagrid('load', { // FixedCompany: $('.c_s ...

  8. 斑马打印机客户端GET和POST,以及后端两种打印方式。

    斑马打印机客户端GET和POST,以及后端两种打印方式. 背景环境:打印机安装在客户端外网.当用户登录时,通过ajax取服务器数据,返回打印机命令,然后客户端通过JS发送给斑马打印机. 1.使用Get ...

  9. Web APi之认证(Authentication)两种实现方式【二】(十三)

    前言 上一节我们详细讲解了认证及其基本信息,这一节我们通过两种不同方式来实现认证,并且分析如何合理的利用这两种方式,文中涉及到的基础知识,请参看上一篇文中,就不再叙述废话. 序言 对于所谓的认证说到底 ...

随机推荐

  1. Oracle创建用户教程

    计算机-->管理-->应用程序与服务-->(OracleOraDb11g_home1TNSListener 和 OracleServiceORCL 服务)->启动服务 打开Or ...

  2. 前端布局神器 display:flex

    前端布局神器display:flex 一直使用flex布局,屡试不爽,但是总是记不住一些属性,这里写来记录一下.   2009年,W3C提出了一种新的方案--Flex布局,可以简便.完整.响应式地实现 ...

  3. # 深入理解Redis(二)——内存管理的建议与技巧

    引语 随着使用Redis的深入,我们不可避免的需要深入了解优化Redis的内存,本章将重点讲解Redis的内存优化之道,同时推荐大家阅读memory-optimization一文. 想要高效的使用Re ...

  4. .net core2.0 中使用log4net

    一.nuget安装log4net 二.添加log4net.config配置文件 <?xml version="1.0" encoding="utf-8"? ...

  5. 附加MySQL数据库的方法

    下面讲解附加MySQL数据库的方法. (1)将“光盘\Code\04\Project\数据库”文件夹中的扩展名为.sql的文件拷贝到本地机器中. (2)在如图1所示的MySQL工作台界面中,单击Dat ...

  6. Java多线程中常见的几个问题

    我们都知道,在java中要想实现多线程,有两种手段,一种是继续Thread类,另外一种是实现Runable接口. 1.进程和线程的区别是什么? 进程是执行着的应用程序,而线程是进程内部的一个执行序列. ...

  7. The as! Operator

    Prior to Swift 1.2, the as operator could be used to carry out two different kinds of conversion, de ...

  8. Kind (type theory)-higher-kinded types--type constructor

    , pronounced "type", is the kind of all data types seen as nullary type constructors, and ...

  9. Fedora Atomic Host 使用中的几个坑

    做成U盘启动:必须用配套工具写U盘,否则安装时各种timeout Cockpit中文页面会导致登录后页面空白的bug,解决办法是更改浏览器首选语言 没有yum,无法下载网页浏览器w3m,Pydio c ...

  10. Jenkins 定时 构建项目

    选择要定时构建的 项目-->配置-->构建触发器 触发项目: Poll SCM:定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作. ...