“对象不支持属性或方法'getAttribute'”

时间:2012-10-15 18:31:30

标签: javascript dynamics-crm dynamics-crm-2011 dynamics-crm-online

我正在使用Dynamics CRM 2011 Online并尝试重构一些适用于Quote>的代码。添加产品页面也适用于订单>添加产品。问题是,当页面加载时,我得到错误“无法获取未定义或空引用的属性'getValue'。”

我进入了IE控制台(尝试了IE 9和10)并键入了我认为是违规的行:

Xrm.Page.getAttribute('ati_clin').getValue()

它抱怨“对象不支持属性或方法'getAttribute'”。我也试过

document.getElementById('ati_clin')

但也失败了。

这对我来说没有意义,因为我可以使用开发者控制台的HTML视图来查找页面上的对象,而且它显然在那里(也没有拼写错误)。即使其中一个页面在运行时正常运行而另一个页面没有正常运行,这个语句在两个页面的控制台中都失败也没有意义。它不应该至少在 在运行时工作的页面上工作吗?

在做了一些研究后,我认为以下帖子是最相关的,但我担心它不会导致得到一个答案,看看我对此有多新:{{3} }

我的问题是,如果元素明显存在,为什么控制台会返回此错误?

1 个答案:

答案 0 :(得分:3)

调试这样的问题时的一个方便的技巧:

Xrm.Page对象位于框架的上下文中。如果要在IE Developer工具中使用控制台而不必中断调试模式,首先必须指向页面上的框架。

示例:

frames[0].Xrm.Page.getAttribute('ati_clin').getValue()