日期:2014-05-16  浏览次数:20835 次

php+ajax 实现局部刷新,类似iframe效果
这是我网站基本结构

—————————————————————————————————————————————

                    头部导航部分

—————————————————————————————————————————————
       |                             |
       |                             |
   左   |                             |无刷新列表
   侧   |                             |
   面   |  需要刷新的内容                    |        
   导   |   为了seo不想能用iframe              |
   行   |    |
   菜   |  
   单   | 
       |                             |
       |                             |
       |                             |
       |                             |
       |                             |
       |                             |
       |                             |
       |                             |
       |                             |
—————————————————————————————————————————————



  想实现用ajax单击左侧的菜单,中间DIV自动刷新,而其它地方不刷新
 我知道用ajax的XMLHttpRequest可以实现这个功能
由于ajax我实在不懂,希望高手能给告诉我怎么做
求高手详细耐心的指导
谢谢
















------解决方案--------------------
function showHint(str)
{
var xmlhttp;
if (str.length==0)
{
document.getElementById("中间的DIV id").innerHTML="";
return;
}
//照顾浏览器的CODE
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
//简单的一个状态变化处理的事件 ,
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("中间的DIV id").innerHTML=xmlhttp.responseText;//这就是你中间需求的内容填充(当然,很多东西客户端的操作也行。由于你的提供的内容很少,这是个基本的实例)
}
}
xmlhttp.open("GET","server.PHP?q="+str,true);//像服务器发送请求的内容,如果是POST格式,下面xmlhttp。send(ARRAYstr);ARRARstr是一般的表格内容,需要url编码。
xmlhttp.send();
}