【发布时间】:2018-03-24 21:44:56
【问题描述】:
我在我的客户/销售表单上设置了一个选项。基于此值,我想更改表单顶部的标题颜色。
我可以通过开发人员工具编辑 CSS 手动完成此操作,但是当我尝试通过表单属性和 Web 资源执行此操作时,我无法更改颜色。
作为基础测试,我只是尝试通过 javascript 将 CSS 注入页面。
这是我创建的 CSS 网络资源。
.ms-crm-Form-HeaderPosition {
background-color: rgba(2,206,239,1) !important;
}
这是我创建的 javascript 网络资源:
function load_css_file(filename){
var fileref = document.createElement("link")
fileref.setAttribute("rel", "stylesheet")
fileref.setAttribute("type", "text/css")
fileref.setAttribute("href", filename)
document.getElementsByTagName("head")[0].appendChild(fileref)
}
function myFormOnLoad(){
load_css_file('/WebResources/aws_ColoredHeaderMGA.css');
}
然后我转到我的销售表单,更改表单属性以加载到我的 Javascript Web 资源中,然后告诉它调用函数 myFormOnLoad,就像在 OnLoad 上一样,即使是表单。
我没有收到任何错误,我知道 JavaScript 被调用了,因为我添加了一个 alert 以确保我确实收到了警报。
我缺少什么来改变标题颜色?
【问题讨论】:
-
您是否考虑过(或尝试过)to modify the style class itself 而不是使用 jquery?
-
@Filburt 我不得不玩弄它,我不确定如何在 Dynamics 365 引擎中实现这一点。
-
您必须包含您自己的 jquery.js Web 资源,因为 MS 从表单脚本中隐藏了
$- 引用的解决方案可以简单地在您现有的myFormOnLoad()中运行。 -
我自己试过了 - 在 OnLoad 中注册的函数中添加
$('.ms-crm-Class-Name-Here').css('background-color', 'yellow');可以解决问题,而且比在运行时附加样式表要容易得多。 -
@Filburt 我只是将来自 jquery.com 之类的完整 jquery 脚本添加为 Web 资源还是还有更多?我切换了它,但在 $ 未被识别时出现错误。
标签: javascript dynamics-crm dynamics-crm-365