[jquery] jQuery가 요소를 찾지 못했는지 확인

나는 jQuery의 선택기, 특히 ID 선택기를 사용하고 있습니다.

$("#elementId")...

jQuery가 요소를 찾았는지 여부를 어떻게 확인해야합니까? 지정된 ID를 가진 요소가 존재하지 않더라도 다음 문은 나에게 제공합니다.[object Object]

alert($("#idThatDoesnotexist"));



답변

$('#idThatDoesnotexist').length당신이 찾고있는 것입니다. (아무것도 찾지 못하면=== 0 .) 따라서 조건문은 다음과 같아야합니다.

if ($ ( '# id'). length) {/ * 찾은 경우 코드 * /} else {/ * 찾을 수없는 경우 코드 * /}

jQuery (거의)는 사용할 때 항상 “jQuery 객체”를 반환하기 때문에 해당 경고에서 객체가 반환됩니다. 이는 메소드 체인을 허용하는 jQuery의 발견 된 요소에 대한 래퍼입니다.


답변

Futuraprime이 맞지만 다음을 수행하여 구문을 줄일 수 있습니다.

if ($("#id").length) {
   //at least one element was found
} else {
   //no elements found
}


답변

!$.isEmptyObject($.find('#id'))

요소가 있으면 true를 반환하고 그렇지 않으면 false를 반환합니다.


답변

$('#my_selector').length > 0
$('#my_selector').get(0) !== undefined
$('#my_selector')[0] !== undefined

이것이 기본입니다. 이제 원하는대로하십시오.


답변