Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery find().html()返回未定义的_Javascript_Jquery_Nodes - Fatal编程技术网

Javascript jQuery find().html()返回未定义的

Javascript jQuery find().html()返回未定义的,javascript,jquery,nodes,Javascript,Jquery,Nodes,我是JS新手,这就是我所做的 我有一个原始的html字符串,当我这样做的时候,它只是html $(rawHtml).find('#footer') 我记录了这个,这是它返回的结果 jQuery { '0': HTMLDivElement {}, '1': HTMLDivElement {}, '2': HTMLDivElement {}, '3': HTMLDivElement {}, '4': HTMLDivElement {},....} 所以我肯定它不是空的。但如果我这样做 $(raw

我是JS新手,这就是我所做的

我有一个原始的html字符串,当我这样做的时候,它只是html

$(rawHtml).find('#footer')
我记录了这个,这是它返回的结果

jQuery {
'0': HTMLDivElement {},
'1': HTMLDivElement {},
'2': HTMLDivElement {},
'3': HTMLDivElement {},
'4': HTMLDivElement {},....}
所以我肯定它不是空的。但如果我这样做

$(rawHtml).find('#footer').html()
它返回undefined。我只想打印出html,还有其他方法吗?为什么打印没有定义

编辑

html很长,基本结构如下:

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
<title>Title</title>
<link rel="stylesheet" type="text/css" href="some link">
<link rel="stylesheet" type="text/css" href="some link">
<link rel="stylesheet" type="text/css" href="some link ">
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/animate.css">
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
</html>
返回未定义的

html返回undefined的唯一原因是在空jQuery集上调用它,这告诉我们find没有找到任何东西

在jQuery集中的项的子代中查找。看起来您的页脚直接位于顶层的集合中;当您使用$解析HTML时,通常会发生这种情况。如果是这样的话,你想要而不是找到

例如:

var rawHTML= 标题内容+ 页脚内容; var footerText=$rawHTML.filterfooter.html; console.logfooterText;
你能发布rawHtml的内容吗?@AdamH它有点长,有点大,但没有看到HTML内容的代表性示例,任何人都很难帮助你。@Anna-这就是MCVEs的作用::-那么你有没有在这个长字符串中带有id页脚的multple div Anna?各位,查看问题中的控制台日志屏幕截图。此外,当人们使用$解析HTML时,这是一个常见的问题/错误。没错,但是如果$rawHtml.find'footer按照OP的建议记录了5个元素,那么问题就不会出现在层次结构上。我还没想好呢FYI@RoryMcCrossan-这只意味着他们有五个顶级元素。我们知道find返回的是一个空集,很明显OP知道如果显示它会更好!里面有一个id=footer。所以逻辑上的结论是…是的,我认为OP的措辞很糟糕,因为输出只能来自记录$rawHtml,而不是$rawHtml。查找“footer”。感谢过滤器在类和id上工作。但是如果我想做像head或body这样的标记,我仍然使用过滤器吗?
$(rawHtml).find('head').html()