0

我目前从网站下载 HTML 并使用“responseText”来获取 HTML 代码,现在我只想要其中的特定部分。如何使用 XMLHttpRequest 选择 HTML 代码的特定部分?我已经研究过使用 Xpath 或 querySelectorAll 来做这件事,我该如何实际而轻松地做到这一点?假设您不想仅选择 HTML 代码 --> div where id="home-members"。

提前致谢!

这是代码:

foob​​ar.com/index.html:

..........
.....
<body>
..........
<div id="home-members">
    ........
    .....
</div>
....
</body>

我的遍历代码:

<script>
$.ajax({
   url: "http://foobar.com/index.php",
   cache: false
}).done(function( html ) {
   var partial = $(html).find("home-members");
   $("#results").append( partial);
})
</script>

<body>
    <div id="results"></div>
</body>
4

3 回答 3

0

使用 jQuery 搜索返回的 html。就像是:

$.ajax({
  url: "test.html",
  cache: false
}).done(function( html ) {
  var partial = $(html).find("div.dynamic-wrap.sidebar-wrap.clearfix");
  $("#results").append( partial);
});
于 2013-09-03T13:58:20.230 回答
0

mm如果我没理解错...

responseText 是一个字符串,因此您可以使用 regEx 选择其中的一部分,但我认为这可能并不容易和被黑。

另一种解决方案可能是.. 使用 InnerHTML 将响应文本放入 div 中,因此您可以使用标准 javascripts 选择器来获取各种元素。就像是..

document.getElementById('structural_div').innerHTML = responseText;

var what_you_need = document.getElementById('structural_div').getElementById('id_of_element_you_need').className

而不是getElementById('id_of_element_you_need')你可以通过类名、标签名等以你想要的方式获取元素。

希望对你有所帮助:)

于 2013-09-03T14:08:46.490 回答
-1

我建议为此使用HtmlAgilityPack 。

于 2013-09-03T13:57:12.770 回答