zoukankan      html  css  js  c++  java
  • MS CRM 4.0 Rename or Remove Left Nav Bar Menu Items. Written by: Michael Thompson

     In MS CRM 4.0 have you ever wanted to rename or remove Left Nav links on an entity only to find the OnLoad script fails when trying to use the preview function on the form designer? 

    In many CRM installs companies prefer to not use the Microsoft CRM product catalog so that Write-In Products is really the list of products (on a Quote for example) and Existing Products never has anything listed under it.  Thus they would prefer to eliminate the Existing Products link in the left nav area, and rename "Write In Products" to "Products" or possibly "Line Items."

    The scripts below rename the Write-In Products link and remove the Existing Products link.  They also check to see if the link exists before going through the function, thus preserving the preview functionality of the form designer (if you preview a form without running this check, then the preview will throw and error).  This rename also avoids going to the server to pull icons as many other scripts do.  Note in the rename function a line is repeated twice.  No it is not a mistake, it is needed.  The rename function passes in 3 parameters (navName, Display text, name you want displayed).  You will probably need something like IE Dev toolbar to be able to find the navName.

     

    /* Retext/Rename Left Nav Display links. */

    function leftNavRename(leftNav, oldName, newName)

    {

        var navItem = document.getElementById(leftNav);

        if(navItem  != null)

        {

            navItem.innerHTML = navItem.innerHTML.replace(oldName, newName);

            navItem.innerHTML = navItem.innerHTML.replace(oldName, newName);

        }

    }

    leftNavRename ('navWriteInProducts','Write-In Products','Products');

     

     

    /* Remove Left Nav bar links */

    function leftNavRemove(lNav)

    {

        var lNavItem = document.getElementById(lNav);

        if (lNavItem != null)

        {

            lNavItem.parentNode.style.display ='none';

        }

    }

    leftNavRemove('navExistingProducts');


    Re: MS CRM 4.0 Rename or Remove Left Nav Bar Menu Items.

    Yes you can, most NAV items can have displayed text changed using the function. You must know the ID of the part you wish to change (the reason for the IE Dev Toolbar reference above). Here is how the onload function would look.

    function leftNavRename(leftNav, oldName, newName)
    {
    var navItem = document.getElementById(leftNav);
    if(navItem != null)
    {
    navItem.innerHTML = navItem.innerHTML.replace(oldName, newName);
    navItem.innerHTML = navItem.innerHTML.replace(oldName, newName);
    }
    }
    leftNavRename ('_MIcomplete','Close Opportunity...', 'Complete Opportunity');
  • 相关阅读:
    程序员找工作必备 PHP 基础面试题 (四)
    Laravel 教程:使用Fast Excel解决导出超大 XLSX 文件(千万级)带来的内存问题
    ThinkPHP无限分类的使用
    PHP 的 interface 有什么用处?
    编写可读代码:通过提前返回来减少缩进
    调试事件的派发
    调试对象的构建
    [反汇编分析] 局部变量复用
    [IDA]批量载入结构体
    [反汇编分析]调用函数传入参数不一致时可能寄存器传入参数
  • 原文地址:https://www.cnblogs.com/janmson/p/1510294.html
Copyright © 2011-2022 走看看