我搜索了一个解决方案,但没有任何相关性,所以这是我的问题:
我想解析一个包含HTML文本的字符串.我想用JavaScript做.
我试过这个库,但它似乎解析了我当前页面的HTML,而不是字符串.因为当我尝试下面的代码时,它会更改我的页面标题:
var parser = new HTMLtoDOM("<html><head><title>titleTest</title></head><body><a href='test0'>test01</a><a href='test1'>test02</a><a href='test2'>test03</a></body></html>", document);
Run Code Online (Sandbox Code Playgroud)
我的目标是从HTML外部页面中提取链接,就像字符串一样.
你知道一个API来做吗?
我有一个包含多个子节点的大HTML字符串.
是否可以使用此字符串构造jQuery DOM对象?
我试过$(string)但它只返回一个包含所有单个节点的数组.
试着获得一个我可以使用.find()函数的元素.
我试图通过jQuery解析这个html来获取data1,data2,data3.虽然我确实获得了data2和data3,但我无法使用我的方法获取data3.我是jQuery的新手所以请原谅我的无知.
<html>
<body>
<div class="class0">
<h4>data1</h4>
<p class="class1">data2</p>
<div id="mydivid"><p>data3</p></div>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
这是我在jquery中调用它的方式.
var datahtml = "<html><body><div class=\"class0\"><h4>data1</h4><p class=\"class1\">data2</p><div id=\"mydivid\"><p>data3</p></div></div></body></html>";
alert($(datahtml).find(".class0").text()); // Doesn't Work
alert($(datahtml).find(".class1").text()); // work
alert($(datahtml).find("#mydivid").text()); // work
Run Code Online (Sandbox Code Playgroud)
只有alert($(datahtml).find(".class0").text());不工作,其余的工作正如预期的那样.我想知道它可能是因为class0里面有多个标签或者是什么?如何在这种情况下获取data1?
我正在使用QUnit编写测试并使用$.ajax()HTML来从我在本地运行的开发站点获取一些测试:
add_elements = function(location, selector) {
$.ajax(location, {async: false}).done(function(data) {
stor.$els = $(selector, $.parseHTML(data));
stor.$els.appendTo($('body'));
})
}
Run Code Online (Sandbox Code Playgroud)
在某个位置使用此功能,我将以下内容data传递给我的.done()回调:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Home</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="/static/css/bootstrap.min.css" rel="stylesheet" media="screen">
</head>
<body>
<div id="app-container" class="container-fluid">
<div class="page-header">
<h1>
<a href="/">Home</a>
<small>Text</small>
</h1>
</div>
<div id="hero-units" class="carousel-inner slide">
<div class="hero-unit home item active">
<h1>
Text text text
</h1>
<p>
More text!
</p>
<div id="app-nav">
<a id="lets-go" class="btn btn-primary btn-large nav-forward" href="/what-up/">
Let's go …Run Code Online (Sandbox Code Playgroud)