2012-02-09 61 views
1

我有一个Rails表单,它有许多表格。其中一个表具有可通过其ID如下访问感兴趣的下拉元素:jQuery中的链式选择器

$('#contract_contract_phases_attributes_0_ngl_price_term') 

我显示/隐藏基于在它选择的价值,这是没有问题的另一要素。麻烦的是:元素的表头行有'th'元素,我需要显示/隐藏它。我能到父表元素,像这样:

$('#contract_contract_phases_attributes_0_ngl_price_term').closest('table') 

不过,我努力的目标,需要给它一个类的price_term“的藏头件(次)。所以,我想最近的元素进一步缩小这个个元素,像这样:

$('#contract_contract_phases_attributes_0_ngl_price_term').closest('table th.price_term') 

但是,这是行不通的。有没有一种方法可以定位这个头元素?

回答

2

.closest()只看父母,祖父母,曾祖父母等等 - 只在DOM中向上。

.find()只看儿童,孙辈等 - 它向下穿过DOM。

因此,你要(.closest())上表中,然后向下(.find())到th.price_term:

$('#contract_contract_phases_attributes_0_ngl_price_term') 
    .closest('table') 
    .find('th.price_term') 
+0

非常感谢。是的,它就像一个魅力! – Bharat 2012-02-09 01:39:33

1

工作的呢?

$('#contract_contract_phases_attributes_0_ngl_price_term').closest('table').find('th.price_term') 
+0

你好,特蕾西,是的。感谢这个作品。它和上面一样。我感谢你的时间。 – Bharat 2012-02-09 19:47:17