访问父节点的另一个子节点

Access to another child of parent

本文关键字:子节点 另一个 父节点 访问      更新时间:2023-09-26

我有这样的HTML:

<div>
  <table>
  </table>
  <div>
  </div>
</div>

在JavaScript中,我已经访问了这个表。现在我想从父元素中获取另一个子元素(div)。

var par = table.parentNode;
var ch = $(par).children("div").first();

实际上我有一个对象,但是当我尝试添加HTML,比如

ch.innerHTML = "Test";

我没有成功。没有添加文本测试。如果我将文本添加到par本身,它的工作,但一旦我得到jquery的孩子,它不工作。

为了调试,我警告parch。在par的情况下,我看到我有HTMLDivElement,在ch的情况下,它只是一个对象。

我做错了什么?

提示:为div提供id并以这种方式获取它不是我的应用程序的解决方案!

你正在使用jQuery和Javascript在一个非常奇怪的方式,为什么你在jQuery对象上使用Javascript方法?

如果$(par).children("div").first();包含正确的对象,您可以通过jQuery像这样设置它的html:

$(par).children("div").first().html('test');

ch是指一个jQuery集合的元素(警告[object Object]),所以应该是什么工作

ch[0].innerHTML = "Test"; (ch[0] = [object HTMLDivElement])

 ch.html( "Test" );

在任何情况下我都不推荐前者,而只是指出错误的地方。

给定table并且想要div,您可以使用.siblings:

$(table).siblings('div').first().html('Test');