2011-07-05 4 views
2

형식이없는 텍스트와 두 개의 div가 포함 된 div가 있습니다. 왜 텍스트가 형식화되어 있지 않은지 묻는다면 API를 통해 플러그인에 의해 반환되므로 실제로 제어 할 수 없습니다. 마크 업은 다음과 같습니다.요소를 제외한 모든 것을 제외하고 서식없는 텍스트를 제거 하시겠습니까?

<div id="parentdiv"> 
    <div class="childdiv"></div> 
    <div class="childdiv"></div> 
    unformattedtext 
</div> 

"unformattedtext"는 어떻게 제거합니까? 가능하다면 CSS로 해보고 싶지만 그렇지 않다면 jQuery가 좋다.

답변

4

#parentdiv 직접 차일있는 텍스트 노드를 제거합니다

$("#parentdiv").contents().filter(function(){ return this.nodeType == 3; }).remove(); 
0

display:inline과 함께 unformattedtext을 div/a/p/span/font에 넣을 수 있습니다. 포맷을 해제하지 마십시오.

<div id="parentdiv"> 
    <div class="childdiv"></div> 
    <div class="childdiv"></div> 
    <div style="display:inline">unformattedtext</div> 
</div> 

<script type="text/javascript"> 
$("#parentdiv :not(.childdiv)").hide(); //Hide whatever is not .childdiv 
</script> 

JSFiddle : http://jsfiddle.net/kongr45gpen/EBL4G/

관련 문제