2010-12-02 3 views
1

이봐, 이 게시물은해야 어떤 제목, 열심히 설명하는 :)jquery : div ID를 읽고 해당 div를 삭제 하시겠습니까?

을 내가

<div id="post-full-116">Content</div> 

<div id="post-116">Content</div> 

내가 (이 경우 동적 번호를 조회 할 수와 동적 아이디의이 몰랐다 116)의 id = "post-full-116"이고 id = "post-116"인 페이지의 다른 div가 있으면 제거하고 싶습니다.

소리가 이상합니다. 그래서 id = "post-number"인 div는 게시물의 미리보기를 보유하고 div는 id = "post-full-number"를 가진 div는 게시물의 전체 내용을 보유합니다.

전체 게시물이 이미 표시되어있는 경우 게시물의 미리보기를 표시하고 싶지 않으므로 jquery로 숨기려고합니다. 전에 서버 측에서해야한다고 알고 있지만,이 경우 jquery가 완벽 할 것입니다.

내가 어떻게 동적 ID의 번호를 쿼리 할 수 ​​있고 같은 번호로 적절한 div를 제거 할 수 있습니까?

+0

이 div의 그들이 어떤 종류의 클래스를 것 가지고 일어나지 않을 것입니다 :

여기에 그 라이브 데모입니까? 'class = "post"'선택을 쉽게하는 데 많은 도움이됩니다. – zzzzBov

답변

0

난 당신이 이런 식으로 뭔가를 할 것이라고 생각하고 있어요 :

, 어떤 "전체"게시물을 잡아 게시물의 수를 발견하고 그것의 "미리보기"버전을 숨겨야합니다

$(function() { 
    $('[id^=post-full]').each(function() { 
     var num = $(this).attr('id').replace(/post\-full\-/,''); 
     $('#post-' + num).hide(); 
    }); 
}); 
.

UPDATE : http://jsfiddle.net/Ender/saUQf/

1

.toggle()이 숨겨진 경우 DIV를 보여, 그 보이는 경우를 숨길 감사합니다. 예 : 사업부가 눈에 보였다 또는이 숨겨진 경우

$("#post-full-116").toggle(); 
$("#post-116").toggle(); 

는 다른 방법으로 확인할 수는 :

if ($"#post-116").is(":visible") 
{ 
    $("#post-116").hide(); 
    $("#post-full-116").show(); 
} 
else 
{ 
    $("#post-116").show(); 
    $("#post-full-116").hide(); 
} 
1

당신은 단지 < 사업부 아이디 = "포스트 116"> 내용 </DIV을 가질 수 >을 입력하고 전체 크기 버전 인 경우 class = "full"과 같은 것을 추가하십시오. 미리보기에서 전체 크기보기로 이동하면 id = "post-116"인 요소를 찾고 내용을 바꾸고 특성을 추가합니다. 전체 크기보기에서 미리보기로 이동 한 다음 div를 다시 찾고 내용을 바꾸고 클래스를 제거하십시오.

3
$('div[id^="post-full"]').each(function(){ 
    $('#post-' + this.id.split('-')[2]).remove(); 
}); 
관련 문제