나는 이것에 붙어있다; 입력란이있어서 결과를 필터링하고 싶습니다. 내가 지금 사용하고있는 다음 함수; jQuery 라이브 필터링 목록 부모 및 하위
$('input[type="text"]').keyup(function() {
var that = this,
$allListElements = $('ul.bare-list > li');
var $matchingListElements = $allListElements.filter(function(i, li) {
var listItemText = $(li).text().toUpperCase(),
searchText = that.value.toUpperCase();
return ~listItemText.indexOf(searchText);
});
$allListElements.hide();
$matchingListElements.show();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="brand-container">
<dl class="brands-letter letter-a" data-letter="letter-a">
<dt>A</dt>
<dd>
<ul class="bare-list">
<li class="brand-item">item 1</li>
<li class="brand-item">item 2</li>
<li class="brand-item">item 3</li>
</ul>
</dd>
</dl>
<dl class="brands-letter letter-b" data-letter="letter-b">
<dt>B</dt>
<dd>
<ul class="bare-list">
<li class="brand-item">item 1</li>
<li class="brand-item">item 2</li>
<li class="brand-item">item 3</li>
</ul>
</dd>
</dl>
</div>
<input>
필드의 값을 기준으로 필터링 할 때 모든 하위 항목이
'display: none'
으로 설정되어 있는지 확인하고 싶습니다. 그렇다면 부모를 숨기려고합니다
.brands-letter
.
내가 어떻게 처리 할 수 있을지에 대한 정보가 있으십니까?