我在这个变量里面有html字符串数据
var htmlstring = "<div><div class='testdiv'>924422</div></div>"
我期待的是获取具有class的div的内容。在此示例中.testdiv数据。
我该如何实现?
我知道一种方法:将此html字符串附加到html页面然后访问。但我不想这样做因为我使用ajax和服务器返回类型的html字符串。现在我想获取特定内容中的数据格。
那么还有其他办法吗?
答案 0 :(得分:3)
首先,您不要在html中的类名中使用.
。要在html字符串中获取该div的内容,可以使用jquery find
函数。
var htmlstring = "<div><div class='testdiv'>924422</div></div>"
alert($(htmlstring).find('.testdiv').html());
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
答案 1 :(得分:1)
这是一种没有jQuery就可以实现它的方法。
var htmlstring = "<div><div class='testdiv'>924422</div></div>";
function getTestDiv(htmlString) {
var textVal = null;
var div = document.createElement('div');
div.innerHTML = htmlString;
var elements = div.childNodes;
if (elements.item(0).childNodes.item(0).className === 'testdiv') {
textVal = elements.item(0).childNodes.item(0).innerHTML;
}
return textVal;
}
console.log(getTestDiv(htmlstring));
答案 2 :(得分:0)
您可以通过以下方式执行此操作:
console.log($(htmlstring).find("div.testdiv").text());