【问题标题】:Javascript function not recognized in CRM 2011 HTML Web resourceCRM 2011 HTML Web 资源中无法识别 Javascript 函数
【发布时间】:2012-08-09 23:03:35
【问题描述】:

继我已解决的 [previous issue][1] 之后,我在构建包含一些基本 javascript 的简单 HTML Web 资源时遇到了问题,页面被正确呈现,但脚本似乎无法正常工作。

我的 HTML 资源非常基础:

<html>
<head>
    <script src="ClientGlobalContext.js.aspx" />
    <script type="text/javascript" src="new_jquery_1.7.2.min" />
    <script type="text/javascript">    

        function buttonClick() { alert('Yo !'); }

    </script>
</head>
<body>
    <input type="button" value="Test" onclick="javascript: buttonClick();" />
</body>
</html>

虽然页面显示正常,但单击按钮会产生 The value of the property is null or undefined not a function object 错误,就像函数不存在一样,但我通过 F12 控制台检查了代码是否正确呈现。

我也尝试通过直接 url 调用 web 资源,形式为

http://mycrmserver/myorg/WebResources/new_myResource

但是(正如我所料)页面的行为是相同的。

我检查了谷歌,我浏览了其他几个 SO 问题 MSDN 并且都指出这是正确的方法,我的代码有什么问题?

其他(不确定是否有用)详情:

  • 如果 F12 工具打开,则错误会在控制台中显示为 SCRIPT5007 javascript 运行时错误。如果不是,如果我浏览到 webresource 直接 url,我会收到通常的脚本错误通知弹出窗口,或者如果我尝试在 CRM 中打开资源,则什么也不会发生。
  • CRM 环境已更新为 Rollup 3(很遗憾,更新它不是一个选项)
  • 我正在使用 IE 9(请记住:Dynamics CRM 尚不能在非 IE 浏览器中使用)


更新 速记标签混淆了 CRM。

基本上这种语法有时会搞砸:

<script src="ClientGlobalContext.js.aspx" />

但这很有效:

<script src="ClientGlobalContext.js.aspx"></script>

【问题讨论】:

  • 您收到的错误是在控制台中出现,还是正在加载一个显示该错误的全新页面?

标签: javascript html dynamics-crm-2011 webresource


【解决方案1】:

根本原因是缺少script 标签,尽管您发布的代码是正确的。

CRM 对您发布到脚本编辑器窗口中的 HTML 进行了一些处理。在浏览器中呈现的是这样的(注意ClientGlobalContext.js.aspx标签的关闭方式与您粘贴的代码不同):

<HTML><HEAD>
<SCRIPT src="ClientGlobalContext.js.aspx">
<script type="text/javascript" src="new_jquery_1.7.2.min" />
<script type="text/javascript">    

    function buttonClick() { alert('Yo !'); }

</SCRIPT>

<META charset=utf-8></HEAD>
<META charset=utf-8></HEAD>
<BODY><INPUT onclick=javascript:buttonClick(); value=Test type=button></BODY></HTML>

分辨率: 为每个开始脚本标签添加完整的“关闭”标签(而不是使用“/>”)。

【讨论】:

  • 这感觉很奇怪很奇怪(而且闻起来像 CRM 错误),但结束标签实际上是解决方案。
  • 同意!我之前已经开始调查原因,但没有时间。我想我可能会做一些挖掘工作,最后更新我的博客;)
  • 我将更新问题以显示(现在工作的)代码的外观。
猜你喜欢
  • 2014-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多