2013-04-05 4 views
1

Sharepoint에서는 여러 요소가 내부에서 몇 개의 요소로 생성됩니다. 그래서 분명히 밝혀지기 때문에 요소가 생성되거나 편집 된 이후에는 요소를 편집하거나 변경할 수 없습니다..each() 밖에있는 특정 요소를 숨기려면 어떻게해야합니까? Jquery

는 내가 달성하고자하는 것은는 .text()가 나는 '.hide()' 숨겨진 될해야 '<span> Stop following</span>' 찾고 있어요 특정 문자가 포함 된 경우 축복하는 모든 '.js-contentFollowing-itemLink' 다음을 반복하는 것입니다.

나는 이것을 수행하는 것 같지 않다. 나는 여러 가지 방법을 시도했다. http://jsfiddle.net/QXwyk/3/

이 또한 내가 다른 값과 텍스트 생성되는 독특하고 이러한 많은 요소 인 ID를 잡아 질수 통지를 받아 : 여기

는 jsfiddle입니다.

HTML :

<span class="ms-contentFollowing-itemTitle"> 
<a href="#" class="js-contentFollowing-itemLink">test</a> 
</span> 

<br> 
<div class="js-contentFollowing-itemUrlDiv"> 
<span class="ms-metadata ms-contentFollowing-itemUrl"></span> 

    <input type="text" readonly="readonly" class="ms-metadata ms-contentFollowing-itemUrl ms-contentFollowing-itemFullUrl" style="visibility: visible; border-color: transparent; background-color: transparent;"> 
</div> 
<a href="#" class="ms-secondaryCommandLink"><span>Stop following</span></a> 

내 JS :

$('.js-contentFollowing-itemLink').each(function() { 
     if ($(this).text() == "test") 

      $(this).closest("span").hide(); 


    }); 

참고 : 나는 그것이 잘못된 요소를 숨 깁니다하지만 If 문은 내가 달성 은어 if 문 내부의 코드를 작동 알고 '따라하기'를 숨길 필요가 있습니다. 이 JS는 작동하지 않는 예제 중 하나 일뿐입니다.

은 내가 if 문 내부 $('.ms-secondaryCommandLink span').hide();과 노력하지만 다음 "중지"모든 <span>을 제거 :/

감사 잔뜩! 코드에서

답변

0

HTML을

<div class="ms-content"> 
<span class="ms-contentFollowing-itemTitle"> 
<a href="#" class="js-contentFollowing-itemLink">test</a> 
</span> 

<br> 
<div class="js-contentFollowing-itemUrlDiv" id="contentFollowingUrl_18" url="http://dev/socialsites/Utförsåkning"> 
<span class="ms-metadata ms-contentFollowing-itemUrl"></span> 

    <input type="text" readonly="readonly" class="ms-metadata ms-contentFollowing-itemUrl ms-contentFollowing-itemFullUrl" style="visibility: visible; border-color: transparent; background-color: transparent;"> 
</div> 
<a href="#" class="ms-secondaryCommandLink"><span>Stop following</span></a> 
</div> 

JS

$('.js-contentFollowing-itemLink').each(function() { 
    if ($(this).text() == "test") 
     var text = $(this).closest('.ms-content').find('.ms-secondaryCommandLink').hide(); 
}); 
,

http://jsfiddle.net/QXwyk/4/

+0

aaah 그것은 내가 찾고 있던 .find() 방법이었다. 감사! – Obsivus

1

몇 가지 문제 :

$('.js-contentFollowing-itemLink').each(function() { 
    if ($(this).text() == "test") 
    var text = $(this).parent().parent().parent().hide); <-- hide not closed properly 
} <--- Extra bracket here.. 
}); 

근무 코드 :

$('.js-contentFollowing-itemLink').each(function() { 
    if ($(this).text() == "test") { 
     var text = $(this).parent().parent().parent().hide(); 
    } 
}); 
+0

오, 내 잘못은 그게 내 VS에 미안해, 그 질문에 대한 몇 가지 변경을 했어 – Obsivus

0

당신은 방법에 따라 특정 텍스트를 포함하는 객체를 선택할 수는 ...있는 당신이 나머지 작업을 수행 할 수 있습니다

예를 기반 : $은 ('JS-contentFollowing-itemLink :. 포함 (테스트)').숨는 장소();

관련 문제