问题描述:
红框标注的1:n关系中界面的按钮隐藏掉。
解决方法:
第一步:
可以在页面的Form_Load()里面添加如下代码:
Code
HideAssociatedViewButtons('{realationid}', ['{title}']);
HideAssociatedViewButtons('{realationid}', ['{title}']);
上面的:
realationid--代表用户建立产品信息与主信息关系的id;
title--代表产品信息左边超链接Li的title属性(即用户停在“添加现有产品信息”按钮上的提示信息)
第二步:
在crm网页的wwwroot\_static\_controls\RemoteCommands\RemoteCommand.js路径下添加如下公用javascript方法:
Code
function HideAssociatedViewButtons(loadAreaId, buttonTitles)
{
var navElement = document.getElementById('nav_' + loadAreaId);
if (navElement != null)
{
navElement.onclick = function LoadAreaOverride()
{
// Call the original CRM method to launch the navigation link and create area iFrame
loadArea(loadAreaId);
HideViewButtons(document.getElementById(loadAreaId + 'Frame'), buttonTitles);
}
}
}
function HideViewButtons(Iframe, buttonTitles)
{
if (Iframe != null )
{
Iframe.onreadystatechange = function HideTitledButtons()
{
if (Iframe.readyState == 'complete')
{
var iFrame = frames[window.event.srcElement.id];
var liElements = iFrame.document.getElementsByTagName('li');
for (var j = 0; j < buttonTitles.length; j++)
{
for (var i = 0; i < liElements.length; i++)
{
if (liElements[i].getAttribute('title') == buttonTitles[j])
{
liElements[i].style.display = 'none';
break;
}
}
}
}
}
}
}
function HideAssociatedViewButtons(loadAreaId, buttonTitles)
{
var navElement = document.getElementById('nav_' + loadAreaId);
if (navElement != null)
{
navElement.onclick = function LoadAreaOverride()
{
// Call the original CRM method to launch the navigation link and create area iFrame
loadArea(loadAreaId);
HideViewButtons(document.getElementById(loadAreaId + 'Frame'), buttonTitles);
}
}
}
function HideViewButtons(Iframe, buttonTitles)
{
if (Iframe != null )
{
Iframe.onreadystatechange = function HideTitledButtons()
{
if (Iframe.readyState == 'complete')
{
var iFrame = frames[window.event.srcElement.id];
var liElements = iFrame.document.getElementsByTagName('li');
for (var j = 0; j < buttonTitles.length; j++)
{
for (var i = 0; i < liElements.length; i++)
{
if (liElements[i].getAttribute('title') == buttonTitles[j])
{
liElements[i].style.display = 'none';
break;
}
}
}
}
}
}
}
最后把该保存的保存该发布的发布,就可以实现按钮的屏蔽了
第三步:实现效果图如下所示
最后问题解决,呵呵。在此要感谢刀客大哥的指导才能这么快解决这个问题。