jQuery를 사용하면 주어진 요소 ID 뒤에 특정 유형의 첫 번째 요소를 어떻게 찾을 수 있습니까? 원하는 요소는 바로 다음 요소 일 수도 있고 아닐 수도 있습니다.반드시 형제가 아닌 다음 요소 가져 오기 및 클래스 없음
아래 함수의 목적은 라디오 버튼 다음에 'select'유형의 첫 번째 발생 요소를 숨기는 것입니다. '다음()'기능의
function showDropDown(radioButtonElem) {
if(document.getElementById(radioButtonElem.id).checked) {
/*$(Get next <select> element after radioButtonElem.id).css("display", "none");*/
}
}
<input type="radio" name="radioButtonGroup" value="sfn" id="sfn" onclick="showDropDown(this);">
<select id="myDropDown">...</select>
나의 이해는 단지 동일한 유형의 요소를 발견 한 것입니다. 나는 틀릴 수도있다. 제발 제 문제를 해결하는 방법을 설명해주십시오.
편집 : 의견을 보내 주셔서 감사합니다. 귀하의 의견을 바탕으로, 나는 이것이 효과가있을 것이라고 생각했지만 그렇지 않습니다. 내가 뭘 놓치고 있니? 필요한 요소는 바로 반드시 즉시 형제를 따르지 않는 형제 자매 인 경우
<script>
function showDropDown(radioButtonElem)
{
if(radioButtonElem.checked)
{
$(radioButtonElem).nextAll('select').first().css('display', 'none');
}
}
</script>
[http://api.jquery.com/closest/](http://api.jquery.com/closest/) 형제 –
아닌 선택하면 당신은 정확하고. 다음은 당신이 필요로하는 것이 아닙니다. 이 질문은 전에 여러 번 묻지 만 사용되는 상황이 다양하므로 상황에 맞는 것을 찾는 것이 어려울 수 있습니다. 당신이 준 샘플은 선택을 형제로 보여 주며, 그렇지 않다는 말을하므로, 우리가 당신을 위해 복제본을 찾는 것이 어려울 것입니다. 'radioButtonElem.checked' 대신'document.getElementById (radioButtonElem.id) .checked'를하는 이유는 무엇입니까? 그것은 조금 중복 된 것 같습니다. –
"반드시 형제 인 것은 아닙니다"즉 형제가 될 것입니다.하지만 중간에 요소가있을 수 있습니다. – Alnitak