<script language="javascript" type="text/javascript"> var request = false; try { request = new XMLHttpRequest(); } catch (trymicrosoft) { try { request = new ActiveXObject("Msxml2.XMLHTTP"); } catch (othermicrosoft) { try { request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (failed) { request = false; } } } if (!request) alert("Error initializing XMLHttpRequest!"); function getCustomerInfo() { var phone = document.getElementById("phone").value; var url = "/cgi-local/lookupCustomer.php?phone=" + escape(phone); request.open("GET", url, true); request.onreadystatechange = updatePage; request.send(null); } function updatePage() { if (request.readyState == 4) if (request.status == 200) alert("Server is done!"); else if (request.status == 404) alert("Request URL does not exist"); else alert("Error: status code is " + request.status); } </script>
HTTP 就绪状态表示请求的状态或情形。它用于确定该请求是否已经开始、是否得到了响应或者请求/响应模型是否已经完成。它还可以帮助确定读取服务器提供的响应文本或数据是否安全。在 Ajax 应用程序中需要了解五种就绪状态:
* 0:请求没有发出(在调用 open() 之前)。
* 1:请求已经建立但还没有发出(调用 send() 之前)。
* 2:请求已经发出正在处理之中(这里通常可以从响应得到内容头部)。
* 3:请求已经处理,响应中通常有部分数据可用,但是服务器还没有完成响应。
* 4:响应已完成,可以访问服务器响应并使用它。
------------------------------------------------------------------------------
send方法中有参数的话,代表是采用POST方法来传递参数。
URIEncoding() 编码转换,解决js在传送中文参数过程中产生的中文问题。
最好采用UTF-8编码。
相关资源:敏捷开发V1.0.pptx