Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.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 获取父对象的属性_Javascript_Jquery - Fatal编程技术网

Javascript 获取父对象的属性

Javascript 获取父对象的属性,javascript,jquery,Javascript,Jquery,我正在尝试使用表行获取表的id。当我处于循环中时: $(this).parent.attr('id'); 然而,我得到了一个错误。我的语法正确吗 谢谢 编辑: 我解决了这个问题。我想这是给了我直接的父母。相反,我不得不像这样搜索最近的祖先: var parentname = ($(this).closest('table')).attr('id'); 谢谢。parent[]是一种方法,因此您应该这样称呼它: $(this).parent().attr('id'); 我认为您需要在调用par

我正在尝试使用表行获取表的id。当我处于循环中时:

$(this).parent.attr('id');
然而,我得到了一个错误。我的语法正确吗

谢谢

编辑:

我解决了这个问题。我想这是给了我直接的父母。相反,我不得不像这样搜索最近的祖先:

var parentname = ($(this).closest('table')).attr('id');
谢谢。

parent
[]是一种方法,因此您应该这样称呼它:

$(this).parent().attr('id');

我认为您需要在调用
parent()
函数时包含括号。

在示例HTML中,我没有看到任何带有
class='selected'
的标记。然而:

  • 复选框的父项是TD
  • TD的父项是TR
  • TR的父级是TBODY
  • TBODY的父对象是表
您可以使用
.closest(selector)
从表中的任何位置获取表祖先,不过:

$(this).closest('table').attr('id')


我得到了一个未定义的问题。请编辑您的问题,然后提供一些关于您在哪里使用这行代码的上下文。调用parent()时包含括号,仍然得到了一个未定义的问题。您能添加您收到的错误以及更多上下文(html、封闭循环等)吗?您可以使用以下站点共享详细信息:@falcata,清理html,将内联代码移动到jquery..以便调试。
var parentname = ($(this).closest('table')).attr('id');
$(this).parent().attr('id');