请帮助理解我做错了什么:我有 DOM 结构:
<div class="wraper">
<div>
<input type="checkbox" name="field_regions[und][8260]" value="8260" class="form-checkbox">
<label class="option" for="edit-field-regions-und-8260">Europe </label>
</div>
<div>
<input type="checkbox" name="field_regions[und][8260]" value="8260" class="form-checkbox">
<label class="option" for="edit-field-regions-und-8260">- East Europe </label>
</div>
<div>
<input type="checkbox" name="field_regions[und][8260]" value="8260" class="form-checkbox">
<label class="option" for="edit-field-regions-und-8260">-- Romania </label>
</div>
</div>
我需要的是找到选中元素的第一个父级。(对于罗马尼亚,它将是 - 东欧)。
我有以下JS:
// Force hierarchy checking.
var selectors3 = terms.find('.form-type-checkbox');
for (var i3 = 0, len3 = selectors3.length ; i3 < len3 ; i3++) {
$(selectors3[i3]).bind('click', function() {
var test = findParent(this);
console.log(test);
});
}
function findParent(a) {
var selector = $(a).prev();
if (selector.find('label').text().indexOf('-')) {
return selector;
}
else {
findParent(selector.prev(a));
}
}
这个函数返回我“未定义”。问题可能出在哪里?