Javascript 在DOMString中导航最简单的方法是什么?

Javascript 在DOMString中导航最简单的方法是什么?,javascript,html,Javascript,Html,假设我有一个DOMString,它是 "<!DOCTYPE html><html><div id="d1"><p>foo</p></div></html>" 你有什么建议吗?我只能使用javascript代码(如果需要,可以使用完全用.js编写的库)。既然您提到了库的使用,那么您可以将字符串的内容传递给并提取树。例如: var myString = '<!DOCTYPE html><html&

假设我有一个
DOMString
,它是

"<!DOCTYPE html><html><div id="d1"><p>foo</p></div></html>"

你有什么建议吗?我只能使用javascript代码(如果需要,可以使用完全用
.js
编写的库)。

既然您提到了库的使用,那么您可以将字符串的内容传递给并提取树。例如:

var myString = '<!DOCTYPE html><html><div id="d1"><p>foo</p></div></html>',
    $myString = $(myString),
    para = $myString.find('p').text();
var myString='foo

', $myString=$(myString), para=$myString.find('p').text();
您的变量
para
现在包含字符串
foo

,使用纯JS:

var str = '<!DOCTYPE html><html><div id="d1"><p>foo</p></div></html>';

var htmlWrapper = document.createElement('html');
htmlWrapper.innerHTML = str;
var pNodes = htmlWrapper.getElementsByTagName('p');

pContent = pNodes[0].innerText || pNodes[0].textContent;
var-str='foo

'; var htmlWrapper=document.createElement('html'); htmlWrapper.innerHTML=str; var pNodes=htmlWrapper.getElementsByTagName('p'); pContent=pNodes[0]。innerText | | pNodes[0]。textContent;


虽然JQuery是一个更好的解决方案,但它添加了许多您可能不需要的功能。

我想您的意思是
$myString=$(myString)
,对吗?顺便说一句,我希望你的建议能奏效,但似乎不行。我错了吗?谢谢,我的意思确实是
$(myString)
。但文章的其余部分是对的?你能再测试一下吗?我无法让它工作…来自$(myString)的返回值是div#d1,您的find查询应该是.find('p')。像这样
$('foo

')。查找('p').text()
var str = '<!DOCTYPE html><html><div id="d1"><p>foo</p></div></html>';

var htmlWrapper = document.createElement('html');
htmlWrapper.innerHTML = str;
var pNodes = htmlWrapper.getElementsByTagName('p');

pContent = pNodes[0].innerText || pNodes[0].textContent;