在javascript变量中查找Class

时间:2016-08-03 20:32:03

标签: javascript html ajax

我正在使用AJAX获取另一个页面的HTML DOM,然后将其存储在这样的变量中

var doc=xhr.responseText;
list=doc.getElementsByClassName("Cname");

由于HTML存储在doc变量中,我使用它来搜索该类,但是它引发了一个错误:

Uncaught TypeError: doc.getElementsByClassName is not a function

如何解决这个问题,即如何使用该变量来搜索存储在其中的类?

1 个答案:

答案 0 :(得分:2)

您在字符串上应用 getElementsByClassName xhr.responseText是一个字符串)它只适用于dom对象而不是字符串。

所以你可以做的是,使用带有HTML内容的 document.createElement 创建一个临时的dom元素对象,并在里面获取元素。

var temp = document.createElement('div');
temp.innerHTML = xhr.responseText;
var list = temp.getElementsByClassName("Cname");

var temp = document.createElement('div');
temp.innerHTML = '<div class="Cname">a</div><div class="Cname1">a</div><div class="Cname">a</div>';
var list = temp.getElementsByClassName("Cname");

console.log(list);