function initReq(reqType,url,isAsynch){
/*指定将处理HTTP响应的函数*/
request.onreadystatechange=handleResponse;///位置在request.send()之前 request.onreadystatechange也只是检测一次而已,并没有循环检测,直至readystate=4,
request.open(reqType,url,isAsynch);
/*为POST请求设定Content-Type头*/
request.setRequestHeader("Content-Type",
"application/x-www-form-urlencode;charset=UTF-8");
request.send(queryString);}////此句是在request.onreadystatechange检测之后执行的,但是在前面还没有异步发送请求,状态应该不为4,怎么会接收到响应文本呢? ==========================
onreadystatechange
回调函数;只要readyState发生了变化,被赋给这个属性的函数后就会被调用。
readystate
数值;0表示未初始化,open()函数还没有被调用;1表示正在载入,send()函数还没有被调用;2表示已载入,send()函数已被调用,并且headers/status已经可用;3表示正在交互,responseText已经含有部分数据;4表示已完成。
/*指定将处理HTTP响应的函数*/
request.onreadystatechange=handleResponse;///位置在request.send()之前 request.onreadystatechange也只是检测一次而已,并没有循环检测,直至readystate=4,
request.open(reqType,url,isAsynch);
/*为POST请求设定Content-Type头*/
request.setRequestHeader("Content-Type",
"application/x-www-form-urlencode;charset=UTF-8");
request.send(queryString);}////此句是在request.onreadystatechange检测之后执行的,但是在前面还没有异步发送请求,状态应该不为4,怎么会接收到响应文本呢? ==========================
onreadystatechange
回调函数;只要readyState发生了变化,被赋给这个属性的函数后就会被调用。
readystate
数值;0表示未初始化,open()函数还没有被调用;1表示正在载入,send()函数还没有被调用;2表示已载入,send()函数已被调用,并且headers/status已经可用;3表示正在交互,responseText已经含有部分数据;4表示已完成。
request.send(queryString)
关注中,对于上面两句的先后顺序也不太明白。试过之后好像都会返回4
request.send(queryString) -->这是发送请求
http://topic.csdn.net/u/20081105/10/1d2f29ad-b8ed-460a-a284-c638070efcb3.html
所以 它行定义但后执行,
function(){}这是个匿名函数 onreadystatechange是个触发事件(如同点击时触发onclick事件一样)
意思是当回调状态改变的时候触发所定义的函数 跟谁先执行无关