给定一个字符串是页面的html,如何在其中找到特定元素?
例如
var foo = "<html>
<head>
<title>Test</title>
</head>
<body>
<div class="container">
<ul class="subcontainer">
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
</div>
</body>
</html>";
我如何获得<ul class="subcontainer"><li>1</li><li>2</li><li>3</li></ul>
?
我尝试使用jQuery包装字符串并通过过滤器
查找元素var bar = $(foo).filter('.container ul.subcontainer');
如何解决这个问题?
更新
我正在使用jQuery 2.0.2
答案 0 :(得分:1)
试试这个:
var bar = $(foo).find('.subcontainer')
答案 1 :(得分:1)
对于多行字符串,首先Javascript需要\
,并且您还需要转义内部"
字符:
var foo = "<html>\
<head>\
<title>Test</title>\
</head>\
<body>\
<div class=\"container\">\
<ul class=\"subcontainer\">\
<li>1</li>\
<li>2</li>\
<li>3</li>\
</ul>\
</div>\
</body>\
</html>";
然后,使用find
代替过滤器:
var obj = $(foo).find("ul.subcontainer");