ajax的学多久,ajax第二天学习

post方式发送请求

要首先设置请求头(参数设置为ajax.setRequestHeader("content-type","application/x-www-form-urlencoded")

-->send中放入要发送的参数(key=value&key=value)-->发送数据(ajax.send(context))

当xml作为载体的时候servlet中声明发送的格式为xml

response.setContextType("text/xml;charset=utf-8");

//定位button按钮,同时添加单击事件

document.getElementsByTagName("input")[0].onclick = function(){

//NO1)创建AJAX异步对象(每个浏览器内置的,无需第三方jar包)

var ajax = createAJAX();//0

//NO2)AJAX异步对象准备发送请求

var url = "${pageContext.request.contextPath}/TimeServletAjax?id="+new Date().getTime();

var method = "GET";

ajax.open(method,url);//1

//NO3)AJAX异步对象真正发送请求体的数据到服务器,如果请求体无数据的话,用null表示

var content = null;

ajax.send(content);//2

//----------------------------------------等待

//NO4)AJAX异步对象不断监听服务端状态的变化,只有状态码变化了,方可触发函数

//0-1-2-3-4,这些是可以触发函数的

//4-4-4-4-4,这些是不可以触发函数的

//以下这个函数是服务器来触发的,不是程序员触发的,这和onclick是不一样的

ajax.onreadystatechange = function(){

//如果AJAX状态码为4

if(ajax.readyState == 4){

//如果服务器响应码是200

if(ajax.status == 200){

//NO5)从AJAX异步对象中获取服务器响应的结果

var str = ajax.responseText;

//NO6)按照DOM规则,将结果动态添加到web页面指向的标签中

document.getElementsByTagName("span")[0].innerHTML = str;

}

}

}

}

public class TimeServletAjax extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String str = sdf.format(new Date());

//注意:在Web2.0时代,即异步方式下,不能用转发或重定向

//因为:转发或重定向会引起浏览器全部刷新,而不是局部刷新

//所以得用以输出流的方式将服务器的结果输出到浏览器

response.setContentType("text/html;charset=UTF-8");

PrintWriter pw = response.getWriter();

pw.write(str);

pw.flush();

pw.close();

}

}

XMLHttpRequest(即:AJAX)对象常用事件,方法和属性

(1)事件:

ajax.onreadystatechange:表示AJAX异步对象不断监听服务端的响应,

是由服务器程序触发,不是程序员触发

(2)属性:

ajax.readyState==0:表示AJAX异步对象已创建好,但还没有调用open()方法

ajax.readyState==1:表示AJAX异步对象已调用open()方法,但还没有调用send()方法

ajax.readyState==2:表示AJAX异步对象已调用send()方法,但请求还没有到达服务器端

ajax.readyState==3:表示服务端已接收到AJAX异步对象的请求,正在处理响应中。。。

ajax.readyState==【4】:表示AJAX异步对象已经完完全全接收到了服务器的响应信             息,但接收到的数据不一定都正确

上述5种状态不是所有浏览器都相同,但状态4每种浏览器都相同

ajax.status==200:表示AJAX异步对象接收到响应码,如果是200的话,表示一切正常

ajax.responseText:表示从AJAX异步对象中获取HTML载体中的数据

ajax.responseXML:表示从AJAX异步对象中获取XML载体中的数据

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/421281.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

马后炮之12306抢票工具(四)--抢票Demo,2014年1月9日终结版

时隔一年多,终于朋友的忽悠下吧抢票Demo的最后一步完善了,与2014年1月9日成功生成车票。 Demo仅经过自己测试,并未在高峰期进行测试,代码质量很差,因为赶工,套用去年模板并未使用设计模式。 代码存在如下BU…

华为虚拟一键部署服务器,一键部署云服务器

一键部署云服务器 内容精选换一换SAP NetWeaver分布式部署如图1所示。该部署方式是由多个SAP实例组成,一个SAP实例是一组同时开始和结束的进程。在分布式系统中,所有实例都运行在独立的云服务器上,主要包括以下实例:ABAP Central …

ADO.NET多值查询

1,新控件,可以显示很多数据,视觉清晰.相当于表. listView,列表视图 添加与数据库相关的列名. SqlDataReader sdr cmd.ExecuteReader(); listView.Items.Clear();//避免数据重复 while(sdr.Read())//读所有行 {string a sdr["第一个列名"].ToString();ListviewIte…

1040. 有几个PAT(25

字符串APPAPT中包含了两个单词“PAT”,其中第一个PAT是第2位(P),第4位(A),第6位(T);第二个PAT是第3位(P),第4位(A),第6位(T)。现给定字符串,问一共可以形成多少个PAT?输入格式:输入只有一行,包含一个字符串…

我的世界服务器显示不出地图,为什么我的世界服务器地图加载不了

期中一段:java:751) ~[ahb.class:?]at net.minecraft.world.World.func_147439_a(World.java:677) ~[ahb.class:?]at com.tmtravlr.jaff.entities.EntityFish.isInTank(EntityFish.java:89) ~[EntityFish.class:?]at com.tmtravlr.jaff.entities.EntityFish.func…

dataGridview与下拉框高级绑定

//在dataGridView里批量显示所有数据string sql "select * from mingxing";SqlConnection con new SqlConnection(address);//今天所学,生成适配器工具sda,批量读取(读完)SqlDataAdapter sda new SqlDataAdapter(sql, con);//创建对象dt,可以理解为是客户端的一个…

1041. 考试座位号(15)

每个PAT考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座…

前端学习(971):swiper插件使用

引入 2复制div部分 不要修改里面的文件 3复制css样式 4复制js 注意winows.addEventListener 加载后使用 5运行结果

登录的基本逻辑

登录的基本逻辑 1,验证账号密码的正确性 与数据库相匹配的代码 string sql "select count[*] from 表名 where pwd ‘’ and ac ‘’ "; //单值结果(0/1)判断是否正确,有一条结果返回。 using System.Data.SqlClient; public static string address “Data So…

ncm转MP3的工具

网易下载歌曲,发现带有.ncm的歌曲不能听,所以我查资料,怎么解决. 查到3种方式. 1,网页搜索F12 network,找到mp3的文件,右键播放. 2,将歌曲缓存,在网易设置,c盘找到缓存文件,有uc文件和连同的个2文件,uc改为mp3,再用网易打开,收藏歌单,下载. . . . 但前两种方式然并ruan. 3, htt…

1051. 复数乘法 (15)

复数可以写成(A Bi)的常规形式,其中A是实部,B是虚部,i是虚数单位,满足i2 -1;也可以写成极坐标下的指数形式(R*e(Pi)),其中R是复数模,P是辐角,i是虚数单位,其等价于三角…

ios企业应用发布流程

转载自:http://blog.csdn.net/justinjing0612/article/details/8758692留作备忘 企业发布app的 过程比app store 发布的简单多了,没那么多的要求,哈 但是整个工程的要求还是一样,比如各种像素的icon啊 命名规范啊等等。 下面是具体的流程 1、…

Mdi和修改的基本逻辑

一个主窗体要有基本的菜单栏,工具栏,状态条,系统栏,右键菜单,鼠标提示… 1,主界面:MDI,IsMdiContianer true,所有窗口的入口,媒介.一个项目只可有一个父容器 Form1 f new Form(); f.MdiParent this;//在父容器显示 ShowDialog();//模态窗口,写在模态窗口之后 的代码 必须等待…

1059. C语言竞赛(20)

C语言竞赛是浙江大学计算机学院主持的一个欢乐的竞赛。既然竞赛主旨是为了好玩,颁奖规则也就制定得很滑稽:0. 冠军将赢得一份“神秘大奖”(比如很巨大的一本学生研究论文集……)。1. 排名为素数的学生将赢得最好的奖品 —— 小黄人…

【Android Developers Training】 58. 缓存位图

注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好。 原文链接:http://developer.android.com/training/displaying-bitmaps/cache-bitmap.ht…