2012-02-15 58 views
0

我有一个DOM对象obj的类型<input>,想得到的是父节点,但是obj.parentNode给出了相同的obj。这是一个<input>对象的规范吗?如果是这样,那么其他类型的DOM对象的行为是不规则的(以直观的方式返回除父类以外的任何东西)?输入的父节点本身?

编辑我一定是做错了事。抱歉。

+2

它适用于我。请显示你的代码。 – 2012-02-15 18:28:27

+3

这是不可能的。 “parentNode”等于它自己的唯一节点是“document.documentElement”节点。 – 2012-02-15 18:29:13

+2

如果你使用jQuery的'.closest()',这可能是有意义的唯一方法。如果选择器匹配,它将自动返回。例如:'

',如果您执行'$('#inputtest')。closest('。test')',它将返回输入。 – 2012-02-15 18:34:39

回答

1

input的行为与网页上其他任何元素的行为没有区别,并且返回它的parentNode()不应返回输入本身。试试看:

<p><input type='text' id='my_id' onfocus="alert(this.parentNode.tagName)" /></p> 

这将是alert“P”。

我猜你没有正确测试父节点。