设计响应信息为HTML字符串,然后使用innerHTML把获取的字符串插入到网页中。
【示例】在服务器端设计响应信息为HTML结构代码。
<table border="1" width="100%"> <tr><td>RegExp.exec()</td><td>通用的匹配模式</td></tr> <tr><td>RegExp.test()</td><td>检测一个字符串是否匹配某个模式</td></tr> </table>
然后在客户端可以这样来接收响应信息。
<input  name="submit" type="button" id="submit"  value="向服务器发出请求"  />
<div  id="grid"></div>
<script>
window.onload =  function(){                      //页面初始化
    var b = document.getElementsByTagName("input")[0];
    b.onclick = function(){
        var xhr = createXHR();                //实例化XMLHttpRequest对象
         xhr.open("GET","server.html", true);   //建立连接,要求异步响应
        xhr.onreadystatechange = function(){   //绑定响应状态事件监听函数
            if(xhr.readyState == 4){        //监听readyState状态
                if (xhr.status == 200 ||  xhr.status == 0){       //监听HTTP状态码
                    var  o =  document.getElementById("grid");
                    o.innerHTML =  xhr.responseText; //直接插入到页面中
                }
            }
        }
        xhr.send();                                  //发送请求
    } 
}
</script>
【注意】
在某些情况下, HTML字符串可能为客户端解析响应信息节省了一些JavaScript脚本,但是也带来了一些问题。
- 响应信息中包含大量无用的字符,响应数据会变得很臃肿。因为HTML标记不含有信息,完全可以把它们放置在客户端由JavaScript脚本负责生成。
- 响应信息中包含的HTML结构无法有效利用,对于JavaScript脚本来说,它们仅仅是一堆字符串。同时结构和信息混合在一起,也不符合标准化设计原则。