2010-04-15 6 views
0

새 메뉴에 사용자 지정 메뉴 항목을 추가하는 기능 (사이트 유효 범위)을 작성했습니다. 문서 라이브러리 안에 새로운 문서가 생성됩니다.일부 문서 라이브러리에서 내 새 메뉴 숨기기

다음은 기능 및

<?xml version="1.0" encoding="utf-8" ?> 
<Feature Id="59bba8e7-0cfc-46e3-9285-4597f8085e76" Title="My Custom Menus" Scope="Site" xmlns="http://schemas.microsoft.com/sharepoint/"> 
<ElementManifests> 
<ElementManifest Location="Elements.xml" /> 
</ElementManifests> 
</Feature> 

요소 매니페스트 파일의 샘플 항목입니다 및 Elements.xml 파일은 위의 샘플으로

<Elements xmlns="http://schemas.microsoft.com/sharepoint/"> 
<CustomAction Id="NewMenu1" GroupId="NewMenu" RegistrationType="List" RegistrationId="101" Location="Microsoft.SharePoint.StandardMenu" Sequence="1002" ImageUrl ="/_layouts/images/DOC32.GIF" Title="My New Menu" Rights="AddListItems,EditListItems"> 
<UrlAction Url="javascript:var surl='{SiteUrl}'; window.location='/test/mypage.aspx?siteurl='+surl+'&amp;listid={ListId}&amp;Source='+window.location" /> 
</CustomAction> 
</Elements> 

입니다. 내 새 메뉴가 모든 문서 라이브러리에 나열됩니다. 이 새 메뉴는 문서 라이브러리 아래에 새 문서를 만듭니다. 하지만 일부 문서 라이브러리에서이를 숨겨야합니다. 이것이 가능한가? 제발 제안 해주세요.

답변

1

일부 자바 스크립트를 콘텐츠 편집기 웹 파트에 추가하여 이러한 메뉴 항목을 숨길 수 있습니다. 콘텐츠 편집기 웹 파트는 사용자가 메뉴 항목을 다음과 같이 jQuery를이 사용

예를 숨겨 원하는 페이지에 넣어해야합니다

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 

<script type="text/javascript"> 

$(document).ready(function(){ 
    $("ie\\:menuitem[text='My New Menu']").each(function(){ 
     this.hidden=true; 
    }); 
}); 

</script> 

HTH를

+0

바울을 주셔서 감사합니다,하지만 우리는 나오지 않았어 고객에게 컨텐츠 편집기 웹 파트를 작성하도록 요청하거나 컨텐츠 편집기 웹 파트에 스크립트를 추가하십시오. 다른 솔루션이 있습니까 – barathan

+0

'웹'범위를 지정할 수 있습니다. 그런 다음 사용자 정의 메뉴 항목이 필요한 웹에서만 활성화하십시오. 사용자 정의 메뉴가 필요없는 문서 라이브러리는 활성화 된 기능이없는 웹에 있어야합니다. –

+0

네가 맞다. 폴이긴하지만, 하나의 유스 케이스에서는 실패한다. 루트 폴더가 아닌 문서 라이브러리 하위 폴더에 새 메뉴를 표시해야합니다. 이 경우에는 실패합니다. – barathan

관련 문제