Javascript crm 2011 xrm.page.getattribute在有值时返回null
我对JScript不是很熟练,但我已经在webResource函数中编写了以下代码,该函数应该在表单加载(OnLoad)时运行Javascript crm 2011 xrm.page.getattribute在有值时返回null,javascript,dynamics-crm-2011,getattribute,xrm,Javascript,Dynamics Crm 2011,Getattribute,Xrm,我对JScript不是很熟练,但我已经在webResource函数中编写了以下代码,该函数应该在表单加载(OnLoad)时运行 问题在于,当字段上有值时(字段不是以表单形式显示,而是在查找时有值),Xrm.Page.getAttribute(creationDateName)返回null。有趣的是,在我的测试组织中,同样的代码工作得非常出色,但当我复制并粘贴到生产组织中发布解决方案时,它无法正常工作,这让我非常困惑。知道会发生什么吗?您需要使用getValue返回字段中的值。您的代码只是检查页面
问题在于,当字段上有值时(字段不是以表单形式显示,而是在查找时有值),Xrm.Page.getAttribute(creationDateName)返回null。有趣的是,在我的测试组织中,同样的代码工作得非常出色,但当我复制并粘贴到生产组织中发布解决方案时,它无法正常工作,这让我非常困惑。知道会发生什么吗?您需要使用getValue返回字段中的值。您的代码只是检查页面上是否存在该字段 您还需要注意,在创建模式下,这些值未设置,因此无法检索它们。在更新模式下,它们将工作。因此,您需要检查页面是否也处于更新模式:
var formType = Xrm.Page.ui.getFormType();
if (formType === 2) // Update
{
var creationDate = Xrm.Page.getAttribute(creationDateName).getValue();
}
您需要使用getValue返回字段中的值。您的代码只是检查页面上是否存在该字段 您还需要注意,在创建模式下,这些值未设置,因此无法检索它们。在更新模式下,它们将工作。因此,您需要检查页面是否也处于更新模式:
var formType = Xrm.Page.ui.getFormType();
if (formType === 2) // Update
{
var creationDate = Xrm.Page.getAttribute(creationDateName).getValue();
}
我真傻,我忘了添加我要查找的字段,这就是为什么它返回null,但多亏了Donal的回答,实际上我正在尝试验证字段是否已满或为null。谢谢你,我真傻,我忘了添加我要找的字段,这就是它返回null的原因,但多亏了Donal的回答,实际上我正在尝试验证字段是否已满或为null。谢谢它提供的是属性而不是值 要获得该值,必须编写如下代码
var creationDateAttr = Xrm.Page.getAttribute(creationDateName);
var valueDateAttr=creationDateAttr.getValue();
或
希望这会有所帮助它提供的是属性而不是值 要获得该值,必须编写如下代码
var creationDateAttr = Xrm.Page.getAttribute(creationDateName);
var valueDateAttr=creationDateAttr.getValue();
或
希望这会有所帮助非常感谢,我实际上错过了页面上的字段。非常感谢您的回答,并实际添加了getValue(),非常感谢您,我实际上缺少了页面上的字段。我感谢您的回答,并实际添加了getValue()