2012-01-02 20 views
1

ナビゲーションアイテムをフォーム内で折りたたむ/展開する方法は?関数setDisplayStateがありますが、これはタブ用であり、ナビゲーション項目用ではありません。CRM 2011ナビゲーションアイテムのフォーム

ナビゲーション項目は、crm 2011のjavascriptを使用して折りたたんだり展開したりできますか?

+0

解決済みです。次の関数をフォームのonloadに追加できます。 function hideNavigation() { \t var nodeList = document.getElementById( 'crmFormNavSubareas')。childNodes;用 \t(VAR i = 0; I user1126110

答えて

3

Xrmオブジェクトがinteracting with navigation itemsすることができますではなく、ナビゲーションタブ自身と、あなたは(/完全に壊れたか、そうでなければダイナミクスCRMの次期バージョンに無関係なされてもしなくてもよい)、サポートされていないメソッドを使用する必要があります。

以下は、各ナビゲーションタブの折りたたみ状態を確認し、適切に折り畳む例です。

function SetCollapsedState(navigationName, makeCollapsed) { 
    var navItems = document.getElementById("crmFormNavSubareas"); 
    for (i = 0; i < navItems.childNodes.length; i++) { 
     var navItem = navItems.childNodes.item(i); 
     var navChild = navItem.firstChild.firstChild; 
     var navName = navChild.attributes.getNamedItem("alt").nodeValue; 
     if (navName.indexOf(navigationName) === 0) { 

      // The "alt" property changes to read "Collapsed" or "Expanded" when 
      // the navigation tab is clicked; this is how I imagine the internal 
      // CRM js checks the collapsed state of each tab. 

      if ((makeCollapsed === true && navName.indexOf("Expanded") > 0) 
       || (makeCollapsed === false && navName.indexOf("Collapsed") > 0)) { 
       navItem.firstChild.click(); 
      } 
     } 
    } 
} 

P.S.あなたの答えはあなたの質問へのコメントとして含まれていますが(実際は実際の回答にする必要があります)、あなたの質問にも同様に対処しますが、私はとにかくより包括的な機能を含めるために投稿することにしました。オブジェクトハンドル/は処理されません。

+0

+1また、P.S. – glosrob

関連する問題