JQuery 对 Ajax 操作进行了封装, 在 jQuery 中最底层的方法时 $.ajax(), 第二层是 load(), $.get() 和 $.post(), 第三层是 $.getScript() 和 $.getJSON()
/* * load(url,data,callback) * * jquery对象调用load()方法,返回内容会自动写入jquery对象内 * * url:请求路径 * * data:请求数据,以key/value形式,json数据格式 * * callback:回调函数,function(data,textStatus,XMLHttpRequest){} * * data:代表请求返回内容 * * textStatus:代表请求状态,其值可能为: succuss, error, notmodify, timeout 4 种 * * XMLHttpRequest对象 * * * load()方法的请求类型: * * 如果客户端没有向服务器端发送请求数据,那么请求类型就是"GET"方式 * * 如果客户端向服务器端发送请求数据,那么请求类型就是"POST"方式 * * load()方法的请求类型,是根据有没有向服务器端发送数据决定的。 */ var json={ username:$("#username").val(), psw:$("#psw").val() }; $("#b1").click(function(){ $("#one").load("load01.jsp?data="+new Date(),json,function(data,textStatus,XMLHttpRequest){ alert(data); }); });
/* * get(url,data,callback,type) * * url:请求路径 * * data:请求数据,以key/value形式,json数据格式 * * callback:function(data,textstatus){} * * data:代表返回的内容,可以是 XML 文档, JSON 文件, HTML 片段等 * * textstatus:代表请求状态, 其值可能为: succuss, error, notmodify, timeout 4 种 * * type:返回内容格式,xml, html, script, json, text, _default。 * * * 返回值:XMLHttpRequest * * * get()方法无论发送不发送请求数据,请求类型都是"GET"方式 */ var json={ username:$("#username").val(), psw:$("#psw").val() }; $.get("get.jsp?date="+new Date(),json,function(data,textStatus){ alert(data); });
1 POST方式: 2 3 $.post("get.jsp?id="+new Date(),json,function(data,textStatus){ 4 alert(data); 5 });
向服务器端发送的信息是json对象,如果表单中的数据很多,可以使用序列化元素(serialize()),在服务器端接收信息可以使用(request.getParameter("username"))获取
var json=$("#form1").serialize();