IT

다음을 통해 $(이것)을 제외한 모든 항목 숨기기:jQuery 선택기에 없음

itgroup 2023. 11. 4. 10:35
반응형

다음을 통해 $(이것)을 제외한 모든 항목 숨기기:jQuery 선택기에 없음

고급 제목, 간단한 질문:

jQuery에서 다음 작업을 수행하려면 어떻게 해야 합니까(다음을 제외하고 모두 숨깁니다).$(this))?

$("table tr").click(function() {
    $("table tr:not(" + $(this) + ")").hide();
    // $(this) is only to illustrate my problem

    $("table tr").show();
});
$(this).siblings().hide();

횡단/자매

$("table.tr").not(this).hide();

별론으로, 당신이 의미하는 것은$("table tr")(점 대신 공백이 있음).)
당신이 가지고 있는 방식으로, 그것은 다음과 같은 클래스가 있는 모든 테이블을 선택합니다.tr(예:<table class="tr">), 아마도 당신이 원하는 것이 아닐 것입니다.

자세한 내용은 설명서를 참조하십시오.

not()을 다른 선택기와 결합하려면 add()를 사용할 수 있습니다.

$('a').click(function(e){
  $('a').not(this).add('#someID, .someClass, #someOtherID').animate({'opacity':0}, 800);
});

이렇게 하면 클릭한 링크를 제외한 다른 모든 링크가 사라지고 선택한 ID와 클래스도 사라집니다.

해결책은 다음과 같습니다.

$("table.tr").click(function() {
    $("table.tr:not(" + $(this).attr("id") + "").hide(); // $(this) is only to illustrate my problem
    $(this).show();
})

--댓글에 대한 EDIT:

$("table.tr").click(function() {
    $("table.tr:not(#" + $(this).attr("id") + ")").hide(); // $(this) is only to illustrate my problem
    $(this).show();
})

언급URL : https://stackoverflow.com/questions/1328314/hide-all-but-this-via-not-in-jquery-selector

반응형