Jquery 使用$()包装字符串并在其中查找元素
给定一个作为页面html的字符串,如何在其中找到特定元素 比如说Jquery 使用$()包装字符串并在其中查找元素,jquery,Jquery,给定一个作为页面html的字符串,如何在其中找到特定元素 比如说 var foo = "<html> <head> <title>Test</title> </head> <body> <div class="container"> <ul class="subcontainer"> <
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>";
如何解决这个问题
更新
我正在使用jQuery 2.0.2尝试以下方法:
var bar = $(foo).find('.subcontainer')
有两件事,首先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>";
示例:首先,该字符串是非法的Javascript。其次,您没有类
foobar
的ul
。第三,您正在寻找find
方法。您应该使用$.parseHTML
代替。修复了打字错误。还以易于阅读的方式格式化了Javascript字符串,但在代码中它是com按下。您为什么不接受任何回答?我得到了对象,但对其调用.html()
返回未定义。我得到了对象,但对其调用.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>";
var obj = $(foo).find("ul.subcontainer");