<html>
<head>
<script>
var xmlHttp;
function createXMLHttpRequest()
{
if (window.ActiveXObject) {
        return new ActiveXObject("Microsoft.XMLHTTP");
    }
    else if (window.XMLHttpRequest) {
        return new XMLHttpRequest();
    }
}function ShowResponse()
{
if(xmlHttp.readyState == 4)
{
    if(xmlHttp.status == 200) 
    {        
      var data=document.getElementById("main");
      // 更新信息 xmlHttp.responseText就是返回的信息,
      data.innerHTML = xmlHttp.responseText;
    }
}
}function send_request(id)
{
url = "页面地址"; // 注意,请求不能跨域,就是只能请求同个站点的某个页面
// 页面地址,可自定义一个后台工作页面
xmlHttp = createXMLHttpRequest();
xmlHttp.onreadystatechange = ShowResponse;
xmlHttp.open("GET", url, true); // GET POST true false 一个是异步一个是同步
xmlHttp.send(null);}
</script>
</head>
<body><div id="main">
</div>
<a href="#" onClick="send_request(123);return false;">点击</a>
</body>
</html>请问JS正则怎么获取xmlHttp.responseText返回信息中某个ID的内容,然后再赋给data.innerHTML。主要难点在于,不知道怎么解决HTML多重嵌套的问题。所要获取的HTML代码如下:
<div id="related-video-box">
<div class="pro-layer">
              <span class="pro-img">
                  <a class="rel" title="" href="">
                  <span class="video_icon"></span>
                  <img src="images/images/002.jpg" alt="视频测试009">
                  </a>
              </span>
              <div class="pro-tit">相关视频标题</div>
              <div class="pro-info">时长&nbsp;00:30:11</div>
           </div>
<div class="pro-layer">
              <span class="pro-img">
                  <a class="rel" title="" href="">
                  <span class="video_icon"></span>
                  <img src="images/images/002.jpg" alt="视频测试009">
                  </a>
              </span>
              <div class="pro-tit">相关视频标题</div>
              <div class="pro-info">时长&nbsp;00:30:11</div>
           </div>
            // class="pro-layer" 很多…………
</div>
谢谢!!

解决方案 »

  1.   

    个人认为可以使用iframe获取. iframe 加载完成后,用js 很容易获取到这个div
      

  2.   


    document.getElementById("main").innerHTML = xmlHttp.responseText;
    document.getElementById("main").innerHTML = document.getElementById("main").getElementById("xx").innerHTML;
      

  3.   


    我还是新手,只知道正则,请问一下程序是怎么个实现的?主要是用这个AJAX实现局部刷新。谢谢!
      

  4.   

    程序就是你的ajax执行请求时,去后台servlet中取数据。
      

  5.   


    谢谢,明白了。我研究一下这个方法。#5的fandelei1982给的方法可用,非常好,如下:document.getElementById("main").innerHTML = xmlHttp.responseText;
    document.getElementById("main").innerHTML = document.getElementById("xx").innerHTML;
      

  6.   


    这样用好像获取不到,改成这样就好了,非常感谢,谢谢!
    document.getElementById("main").innerHTML = xmlHttp.responseText;
    document.getElementById("main").innerHTML = document.getElementById("xx").innerHTML;