我试图找到一种方法来提醒p标签的内容而没有类,名称或ID。它是一个名为' question'所以我想我可以接下来。父标签下有2个p标签,我要找的是第二个标签。当我运行它时,它返回null。我无法弄清楚为什么,因为我是JQuery的新手,感谢您的帮助。
alert($('#question').find('p').first().next().html());

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<td id="question">
<p>First</p>
<p>This is the one I want</p>
</td>
&#13;
答案 0 :(得分:1)
你的javascript很好。问题出在你的HTML上。你可能忘了将它包装在一个表和一个tr:
中
alert($('#question').find('p').first().next().html());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td id="question">
<p>First</p>
<p>This is the one I want</p>
</td>
</tr>
</table>
问题中的代码不起作用,因为<td>
没有<table>
和<tr>
时,它会被呈现为没有<td>
:
<p>First</p>
<p>This is the one I want</p>
答案 1 :(得分:1)
问题是标记无效。如果没有td
和table
元素,您就无法拥有tr
个元素。那么,会发生什么,浏览器通过删除孤立td
标记来修复损坏的标记。
如果您使HTML有效,它将起作用:
alert($('#question').find('p').first().next().html());
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td id="question">
<p>First</p>
<p>This is the one I want</p>
</td>
</tr>
</table>
&#13;
答案 2 :(得分:1)
检查检查器中的代码时,您可以看到,由于System.Drawing
和table
标记不存在,因此您的tr
标记也不存在,td
返回null。只需添加它们。
$('#question')
&#13;
alert($('#question').find('p').first().next().text());
&#13;