我正在處理一個包含很多節的窗體。每個部分都有一個單選按鈕,用於指示用戶想要使用的單位(lbs/oz vs kg等)。當他們點擊一個單元時,我想隱藏()所有輸入在同一部分,然後顯示()相關的。jQuery:使用.find動態選擇元素()
我不能得到它的工作。我認爲我以某種方式誤解了find()函數,因爲它沒有選擇任何元素。
var show_hide_units = function (selectedUnitElement) {
$element = $(selectedUnitElement);
unit_class = $element.attr("class");
$section = $($element.parents('.measurement'));
$inputs = $($section.find('.inputs *'));
$inputs.hide();
$inputs.find('.' + unit_class).show();
};
這裏是一個小提琴示出更多的上下文:http://jsfiddle.net/32Q9t/
任何指針將不勝感激。
也許你想用'filter',而不是'find'?在孩子們中間搜尋。 –
@JanDvorak:謝謝,但不是 - 我想要顯示的元素是$ inputs元素 – burgerB
的後代,然後您試圖顯示隱藏節點的後代。無論如何,隱藏節點的孩子都會隱藏起來。 –