如何从XMLHttpRequest获取元素

时间:2015-01-27 15:44:48

标签: javascript html dom

我试图从url html文件中获取一个元素。元素<td>Thu Dec 18 10:33:19 EST 2014</td>,它位于url html页面中,传递给loadHTML函数。它将html页面字符串发送到另一个名为handler的函数。从解析器中可以得到具体的。

&#13;
&#13;
function loadHTML(spanId, url) {
var xmlhttp = new XMLHttpRequest();


xmlhttp.open("GET", url, true);
xmlhttp.onreadystatechange = function () {
    if (xmlhttp.readyState == 4 /* complete */) {
                handler(xmlhttp.responseText, spanId);
          }
};
xmlhttp.send();
}


function handler(responseText, spanId) {
var parser =new DOMParser();
parser.getDocument()
//get the date/time from parser 
var dateTime = …
//get class name from parser
var className = …

var span = document.getElementById(spanId);
span.innerHTML = dateTime;
span.className = className;
}
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

在现代浏览器中,您还可以设置xhr.responseType = "document"并直接从XHR获取文档。

答案 1 :(得分:0)

认为你需要这样做:

parser = new DOMParser();
var doc = parser.parseFromString(responseText, "text/html");

var dateTime = doc.querySelector("td.dateTime").innerHTML;

并在class="dateTime"

上设置<td>

From MDN on DOMParser