2016-12-15 34 views
0

我试图采取一个字段值(这是一个两选项复选框),如果它被检查,然后设置部分的可见性为真,如果它没有被检查将可见性设置为false。我在场上设置了一个on on change事件来调用函数。使用JS隐藏动态365部分

当我进入表单并选中该框或取消选中该框时,它会给我一个脚本错误。

这是我使用的功能:

function SetProductVisible(){ 


    if (Xrm.Page.getAttribute("ee_productspecific").getValue()){ 
     Xrm.Page.ui.tabs.get(“SubGrids”).sections.get(“Products”).setVisible(true); 
    } 

    else{ 
     Xrm.Page.ui.tabs.get(“SubGrids”).sections.get(“Products”).setVisible(false);  
    } 
}; 

谢谢您的帮助。

的字段默认值也被设置为“无”

+1

在您的浏览器中打开开发工具,然后执行产生错误的操作。脚本工具中的调试器应该在异常处自动中断。我知道这是Chrome和FF开发工具的行为,对于IE,您可能需要勾选一个选项来暂停异常。 – Polshgiant

+0

您很可能没有正确的选项卡或部分名称,首先检查表单上的选项卡/部分名称(自定义)。 – dynamicallyCRM

回答

2

确保您使用的是正确的引号用"更换

正如评论中所述,还要确保您为选项卡和部分使用正确的名称,并检查开发者控制台以获取有关该错误的更多信息。

+0

这很可能。代码中'SubGrids'和'Products'的代码需要手动替换,这通常发生在从浏览器复制粘贴代码时出现 –

0

而不是做一个自定义的Web资源来显示/隐藏一个字段或部分,我会建议你去一个业务规则。通过业务规则,您可以设置一个字段值的简单检查,并根据该字段隐藏其他字段。

+0

这样的问题很简单,商业规则比JS更合适 – tsukumogami

+0

除了无线电通信局不能隐藏部分/标签,仅限于单个字段。 – teleute00