XMLHttpRequest相关知识:
提供不重新加载页面的情况下更新网页,
页面加载后在客户端向服务器请求数据,
页面加载后在服务器端接受数据,在后台向客户端发送数据。
属性:readyState
返回XMLHttpRequest的当前状态
备注:变量,此属性只读,状态用长度为4的整型表示.定义如下:
0 (未初始化) 对象已建立,但是尚未初始化(尚未调用open方法)
1 (初始化) 对象已建立,尚未调用send方法
2 (发送数据) send方法已调用,但是当前的状态及http头未知
3 (数据传送中) 已接收部分数据,因为响应及http头不全,这时通过responseBody和responseText获取部分数据会出现错误,
4 (完成) 数据接收完毕,此时可以通过通过responseBody和responseText获取完整的回应数据
jQuery Ajax:
jQuery Ajax中的方法都是对Query.ajax()进行封装以方便我们使用的方法
程序中最常用:$.ajax:
$.ajax({
type: "post",
dataType: "json",
url: "hr.changeDimissoryEmp.do",
data: data,
success: function(result){
var returnCode = result.returnCode;
// 成功
if (returnCode == G_SUCC_CODE) {
$(".group-list", $('div#employeeContent')).load("hr.loadGroup.do");
} else {
openDialog({
message: result.message
});
}
},
error: function(jqXHR, textStatus, errorThrown){
openDialog({
message: messages["error.ajax"]
});
}
});
其他方法:
1. load( url, [data], [callback] ) :载入远程 HTML 文件代码并插入至 DOM 中。
url (String) : 请求的HTML页的URL地址。
data (Map) : (可选参数) 发送至服务器的 key/value 数据。
callback (Callback) : (可选参数) 请求完成时(不需要是success的)的回调函数。
这个方法默认使用 GET 方式来传递的,如果[data]参数有传递数据进去,就会自动转换为POST方式的。
2. jQuery.get( url, [data], [callback],[type] ):使用GET方式来进行异步请求
url (String) : 发送请求的URL地址.
data (Map) : (可选) 要发送给服务器的数据,以 Key/value 的键值对形式表示,会做为QueryString附加到请求URL中。
callback (Function) : (可选) 载入成功时回调函数(只有当Response的返回状态是success才是调用该方法)。
type (String) : (可选)官方的说明是:Type of data to be sent。其实应该为客户端请求的类型(JSON,XML,等等)
这是一个简单的 GET 请求功能以取代复杂 $.ajax 。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用 $.ajax。
3. jQuery.post( url, [data], [callback], [type] ) :使用POST方式来进行异步请求
4. jQuery.getScript( url, [callback] ) : 通过 GET 方式请求载入并执行一个 JavaScript 文件。
url (String) : 待载入 JS 文件地址。
callback (Function) : (可选) 成功载入后回调函数。
5.serialize() 与 serializeArray()
serialize() : 序列表表格内容为字符串。常用来将form表单进行序列化。
serializeArray() : 序列化表格元素 (类似 '.serialize()' 方法) 返回 JSON 数据结构数据。