我有一个Rails表单,其中包含许多表。其中一个表有一个感兴趣的下拉元素,可以通过它的id访问:
$('#contract_contract_phases_attributes_0_ngl_price_term')
我根据其中选择的值显示/隐藏另一个元素,这没问题。麻烦的是:元素的表头行有'th'元素,我需要用它来显示/隐藏它。我可以这样到达父表元素:
$('#contract_contract_phases_attributes_0_ngl_price_term').closest('table')
但是,我试图通过给它一个'price_term'类来定位需要隐藏的头元素(th)。所以我试图进一步缩小与这个元素最接近的元素,如下所示:
$('#contract_contract_phases_attributes_0_ngl_price_term').closest('table th.price_term')
然而,这不起作用。有没有办法可以定位这个标题元素?
答案 0 :(得分:2)
.closest()
只关注父母,祖父母,曾祖父母等等 - 只会在DOM中向上发展。
.find()
只关注孩子,孙子等等 - 它通过DOM下行。
因此,您希望向上(.closest()
)到表格,然后向下(.find()
)到th.price_term:
$('#contract_contract_phases_attributes_0_ngl_price_term')
.closest('table')
.find('th.price_term')
答案 1 :(得分:1)
这有用吗?
$('#contract_contract_phases_attributes_0_ngl_price_term').closest('table').find('th.price_term')