Ajax基础
1:Ajax可以通过JavaScript的XMLHttpRequest对象与服务器进行通信,通过XMLHttpRequest,JavaScript可以在不重载页面的情况下与服务器进行通信。
2:XMLHttpRequest 浏览器支持
<script type="text/javascript">
function ajaxFunction()
{
var xmlHttp;
try
{
xmlHttp=new XMLHttpRequest();
//尝试Firefox浏览器
}
catch (e)
{
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
//尝试IE6.0
}
catch (e)
{
try
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
//尝试IE5.5
}
catch (e)
{
alert("您的浏览器不支持AJAX!");
return false;
}
}
}
}
</script>
3: onreadystatechange 属性 指定服务器处理完请求后需要调用的回调函数
4:readyState存放服务器相应的状态,4代表请求已经完成
xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4)
{
}
}
5:responseText 属性 存放服务器返回的数据
6:向服务器发送一个请求
open() 方法需要三个参数。第一个参数定义发送请求所使用的方法(GET 还是 POST)。第二个参数规定服务器端脚本的 URL。第三个参数规定应当对请求进行异步地处理。
send() 方法可将请求送往服务器。
相关文档:
一.AjaxPro的使用
1.在项目中添加引用,浏览找到AjaxPro.2.dll文件
2.在Web.config中的system.web里面写入以下代码
</configuration>
<system.web>
<httpHandlers>
<add verb="*" path="*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2"/>
</httpHandlers>
</system.web> ......
Ajax的IE缓存问题,会造成用open时用get方法不能重复提交,导致获取不到实时的信息。解决的办法有以下几种:
1.客户端在url后添加随机数.
new Date().getTime()或者Math.Random()
或者送请求前加上
XMLHttpRequest.setRequestHeader("If-Modified-Since","0")
2.或者用post方法提交  ......
function Ajax(url)
{
var m_xmlReq=null;
if(window.ActiveXObject)
{
try
{
m_xmlReq = new ActiveXObject('Msxml2.XMLHTTP');
}
catch(e)
{
try{m_xmlReq = new ActiveXObject('Microsoft.XMLHTTP');}catch(e){}
}
}
else if(window.XMLHttpRequest ......
1:Ajax可以通过JavaScript的XMLHttpRequest对象与服务器进行通信,通过XMLHttpRequest,JavaScript可以在不重载页面的情况下与服务器进行通信。
2:XMLHttpRequest 浏览器支持
<script type="text/javascript">
function ajaxFunction()
{
var xmlHttp;
try
{
xmlHtt ......
var http_request;
function find(txt) {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
http_request.onreadystatechange = function() {
&n ......