1.Flashjavascript
2.Java appletcss
3.框架 若是使用一组框架构造一个页面,不用动整个页面java
4.隐藏的iframe程序员
5.XML HttpRequest:该对象是对javaScript的一个扩展,能够使页面与服务器进行通讯。当成 xmlHttpRequest对象的代名词。ajax
核心的xmlHTTPRequst。是一种支持异步请求的技术。XmlHttpRequest使您能够使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。json
一、创建xmlHttpRequest 返回 调用它的方法赋值。数组
二、链接服务器实现监控 返回值.onreadystatechange 经过xmlReq.status 能够查看接收的5中状态。If(xmlreq.readyState==4)//响应发送完毕{if(xmlReq.status==200||xmlreq.status==304){}}浏览器
三、Open(“post”,”路径”,true);缓存
四、Send(date)//通常为空字符串。服务器
解决:怎样保存每次路径发生变法 加一个时间变量。Open(“get”,”../testservlet?timesttamp=”+newDate().getTime()+”$a=9”,”true”);//这里还能接参数
客户端用request.getParameter(“a”)接收
l Open(“methed”,”url”,asynch);XMLHttpRequest对象的open方法容许程序员用一个AJAX调用向服务器发送请求。
Methed:请求类型,类型有“get”或”post”字符串。若只想从服务器检索一个文件而不须要发送任何数据。使用GET。若须要向服务器发送数据。用post
Url:路径字符串,指向你所请求的服务器上的那个文件,能够是绝对路径和相对路径。(../servlet路径)
Asynch:表示请求是否要异步传输。默认为true
l Send方法:可为已经待命的请求发送指令。Data将要传递服务器的字符串
l onreadystatechange::该事件处理函数由服务器触发,而不是用户
更新XMLHttpRequest对象的readyState来实现。
readyState :readyState 属性表示Ajax请求的当前状态,它的值yoga数字表示。
u 0表示未初始化,还么有调用open方法
u 1表明正在加载,open方法已调用,单send方法尚未被调用
u 2表明已加载完毕。Send已被调用,请求已经开始
u 3表明交互中,服务器正在发送响应
u 4表明完成,响应发送完毕。
每次readState值的改变,都会触发值改变
responseXML若是返回的是XML,那么数据存在response中 要把字体改成text/xml
l Ajax与服务器的创建链接,接收服务器的请求,处理服务器返回的数据
开发步骤:
1.建立XMLHttpRequest对象
2.打开和服务器的链接
3.发送数据
4.接收服务器端的响应
l 处理事件单击按钮响应 链接一个js winow.onlaod 函数onclick响应事件
在函数中写上面实现代码。
怎样建立XMLHttpRequest对象
Var xmlHttpReq=new ActiveXobject(‘MSXML2.XMLHTTP.3.O”);//
xmlHttpReq.open(”GET”,”http://localhost/books.xml”,false);
xmlHttpReq.send();
Alert(xmlHttpReq.responseText);
非IE浏览器
就是 var XmlHttpReq =new XMLHttpRequest();
function ajaxHttpRequest()
{
var xmlHttp;
try{
xmlHttp=new XMLHttpRequest();
}catch(e)
{
try{
xmlHttp=new ActiveXObject("Msxm12.XMLHTTP");
}
catch(e)
{
try{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){}
}
}
}
jQuery不用写上面这些代码。
function ajaxFunction(){
var xmlHttp;
try {
xmlHttp=new XMLHttpRequest();
} catch (e) {
try {
xmlHttp=new ActiveXObject("Msxm12.XMLHTTP");
} catch (e) {
try {
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
}
}
}
return xmlHttp;
}
window.onload=function()
{/*
<td><input type="text" name="username" value="" id="username">
<div id="mydiv"> </div>
<input type="button" name="checkname" value="查看用户名" id="checkname">
*/
document.getElementById("checkname").onclick=function()
{
//alert("aaa");
var username=document.getElementById("username").value;
//alert(username);
var xmlReq=ajaxFunction();
xmlReq.onreadystatechange=function()
{
//alert(xmlReq.readyState);
if(xmlReq.readyState==4)
{
if(xmlReq.status==200||xmlReq.status==304)
{
var data=xmlReq.responseText;//相对于一个路径的页面内容。能够直接在页面中赋值给它响应页面。
document.getElementById("mydiv").innerHTML=data;
}
}
}
xmlReq.open("post","testServlet",true);
xmlReq.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlReq.send("username="+username);
}
}
一、先经过getElmentsByTagName(“province”)得到元素。获得数组
二、遍历数组得到该元素的属性:getAttribute(“name”)
三、用document,.createElment(“option”)//建立元素
四、给建立的元素设置value值setAttribute.
五、建立document.createTextNode(attriname)//文本节点给得到的getAttribute.
六、用建立的option.appendChild(text)文本节点。
代码:
var xmlDoc=xmlReq.responseXML;
// document.getElementById("mydiv").innerHTML=data;
var prc=xmlDoc.getElementsByTagName("province");
for(var i=0;i<prc.length;i++)
{
var prcs=prc[i];
var attrname=prcs.getAttribute("name");
var province=document.createElement("option");
province.setAttribute("value", attrname);
var textElement=document.createTextNode(attrname);
province.appendChild(textElement);
var p=document.getElementById("select");
p.appendChild(province);
Json对象:是一个无序的“名称/值/对”集合。一个对象以{左括号开始}右括号结束每一个名称后跟一个冒号:(名称/值)对直接使用,逗号分隔。
有8个包 加强包,json-lib-2 库包装好了Ext_js无刷新 www.open-open.com
这里出现一个函数eval把一个字符串看成它的参数。
v List集合转换json对象
l 1、创建实体类构造方法
l 2、创建LIst集合添加实例化类的 把几个实例化类添加到list集合中
l 3、直接用 JSONArray js=JSONArray.fromObject(list);
l 4、过滤JsonConfig config=new JsonConfig(); config.setExcludes(new String[]{“pid”});过滤掉list集合中的Id不生成json
好处是能够直接显示出来 不用在jsp页面中变量循环出来了。
v 一个对象转换成Json对象。
Province p=new province(1,”吉林省”);
JSONObject jsonObject=JSonObject.fromObject(p);
JQuery中AJAX相关工具函数。
问题:元素进行遍历、同时对一些特需的元素进行判断如复选框和单选框按钮。判断他们是否被选中,判断表单元素是否被禁用。
v Serialize()方法 根据包装集里全部的成功表单元素,建立正确格式化的、通过URI编码的查询字符串。