编程语言
首页 > 编程语言> > javascript – XRM setDisable()不适用于IE以外的浏览器

javascript – XRM setDisable()不适用于IE以外的浏览器

作者:互联网

从IE以外的浏览器打开时,我们的XRM表单上有错误.您可以在图像链接上看到无用的消息.

错误是不清楚所以我调试它,它导致我在页面加载javascript函数上的错误.
它无法正确使用XRM setDisabled()函数:

Xrm.Page.getControl("simpeg_tipelokasi").setDisabled(true);

在IE上它可以工作并且该字段被禁用,但奇怪的是它在Chrome和Firefox上不起作用.你能帮我弄清楚为什么它不能在这些浏览器上运行吗?非常感谢!

编辑:

我的不好,这实际上是一个问题,它位于两个浏览器的ActiveX配置中,而不是在setDisabled函数上.在调试前一段时间我一定错过了它.
请参阅此网址上的新帖子:
Alternative to XRM Javascript calling webservice using ActiveX

解决方法:

您需要将组织的汇总更新至至少12(目前最新).不过,我很惊讶你实际上得到了错误.使用不受支持的浏览器时,您无法登录并显示“主”表单.

编辑:

这绝对不是RU12和浏览器品牌的问题.我刚创建了一个新组织,并通过Web资源添加了以下功能.

function disableFullNameOnLoad(){
  Xrm.Page.getControl("fullname").setDisabled(true);
  alert("Full name disabled on load.");
}

function enableFullNameOnSave(){
  Xrm.Page.getControl("fullname").setDisabled(false);
  alert("Full name enabled on save.");
}

正如命名法所暗示的那样,禁用是在表单的onload中执行的,并在其onsave中启用.我使用FF,IE和Cr​​进入CRM(RU12,OP).行为是一致的 – 当我打开表单时灰色的全名,当我保存它时可编辑.

因此,无论您的平台上存在什么问题,它都与跨浏览器不兼容性无直接关系.当你添加我的示例中的确切代码时,你能再次检查IE和FF之间的行为是否存在差异,请按照我描述的方式连接到事件.

标签:javascript,firefox,google-chrome,dynamics-crm-2011,xrm
来源: https://codeday.me/bug/20190901/1780748.html