2011-08-01 3 views
2

내가 가진 : 같은 링크가 데이터베이스에서 사용할 수있는 경우숨기기 리튬 요소 HREF가 비어있는 경우는

<ul class="webServicesURLS"> 
      <li><asp:HyperLink ID="restURL" runat="server" Text="REST" /></li> 
      <li><asp:HyperLink ID="bboxURL" runat="server" Text="BBox" /></li> 
      <li><asp:HyperLink ID="esbURL" runat="server" Text="ESB" /></li> 
</ul> 

이있는 HREF 링크가 뒤에 코드에 추가됩니다. jQuery를 사용하여 href 링크가 추가되지 않은 <li>을 숨기고 싶습니다. 그런 다음 href 링크가없는 경우에는 <ul>을 숨기십시오.

답변

2

당신은 각각 has attribute 선택과 :visible 선택과 :not():has()을 결합 할 수 있습니다 :

$("li:not(:has(a[href]))").hide(); 
$("ul:not(:has(li:visible))").hide(); 
+0

감사합니다. 작동합니다. – elvispt

1

$ (문서) .ready (함수() {

if(!(".webServicesURLS li a").attr("href")){ 
    $(this).parent().hide(); 
}  

});

2

시도 : 그것은 :contains하지만 :has, 내 실수 안

$("li:not(:contains(a))").hide(); 

업데이트. 다음은 올바른 :

$("li:not(:has(a[href]))").hide() 

Example.

관련 문제