2012-12-13 3 views
0

span에 특정 텍스트가있는 경우에만 div를 활성화해야하지만 div가 "contains"대괄호에 무엇을 넣든 관계없이 div가 활성화됩니다. 심지어 무작위 횡설수설. 내 페이지의 머리에서 나는 구글의 JQuery와 참조Jquery span : contains가 작동하지 않습니다.

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 

그럼 내 스크립트를 실행 바로 닫는 body 태그 내가 잘못 뭐하는 거지

<script> 
if($("span:contains('abc123')")){ 
document.getElementById("mydiv").style.display = "block"; 
} 
</script> 

전에? 도움을 주셔서 감사합니다.

+0

[요소가 DOM에 있는지 확인하거나 jQuery를 사용하지 않을 수 있습니까?] (http://stackoverflow.com/questions/7119308/check-that-element-is-in-dom-or-not-with- jquery) –

답변

2

다음 length 속성이있는 경우, 컬렉션에 거기 이러한 요소의 얼마나 많은 당신을 말할 것이다 단지 다음에 추가하십시오 :

if($("span:contains('abc123')").length) { 
    $("#mydiv").show(); 
} 

나는 페이지에서 jQuery를 이미 가지고 있기 때문에 더 잘 작동한다고 생각합니다.

+0

감사합니다 !!!! 완벽하게 작동합니다. – themike

1

요소가 실제로 존재하는지 확인해야합니다. 선택자는 항상 진리 값을 반환합니다. ,

<script> 
if($("span:contains('abc123')").length > 0){ 
$("#mydiv").css("display","block") 
} 
</script> 
0

이 그래, 내가 믿는이 이미 대답한다 : 나는 다음과 같은 것을 할 것

if($("span:contains('abc123')").length) { 
    //^^ elements exist 
} 
관련 문제