Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dynamics crm 2011 访问iFrame中的HTML控件_Dynamics Crm 2011 - Fatal编程技术网

Dynamics crm 2011 访问iFrame中的HTML控件

Dynamics crm 2011 访问iFrame中的HTML控件,dynamics-crm-2011,Dynamics Crm 2011,如何从CRM中的javascript访问iframe中的html控件 我有: var height=document.getElementById(“IFRAME\u TransactionProduct\u RA”).contentWindow.document.getElementById(“txt”).value; 但这会导致“页面错误”,并且内容不会加载 我要访问的元素是id为“txt”的html输入: 下面是一个示例,说明如何将值从CRM字段复制到IFRAME中嵌入HTML控件中的控

如何从CRM中的javascript访问iframe中的html控件

我有:

var height=document.getElementById(“IFRAME\u TransactionProduct\u RA”).contentWindow.document.getElementById(“txt”).value;
但这会导致“页面错误”,并且内容不会加载

我要访问的元素是id为“txt”的html输入:


下面是一个示例,说明如何将值从CRM字段复制到IFRAME中嵌入HTML控件中的控件。我假设web资源和字段的名称。你必须适应这些。你也可能会抛出一个try-catch,以防CRM抛出en异常(明白笑话吗?),请注意,我正在手机上键入代码,因此可能在某个地方出现拼写错误(是的,自动更正)

var source=Xrm.Page.data.entity.attributes.get(“oneCoolField”)
var information=source.getValue();
var customHtml=Xrm.Page.ui.controls.get(“WebResource\u EmbeddedHtmlContent”);
var destination=customHtml.getObject().contentWindow.document;
如果(目的地){
var customControl=destination.getElementById(“elementToAccess”);
if(客户控制){
customControl.value=信息;
}
}
编辑:

这将使您访问web资源

var customHtml=Xrm.Page.ui.controls.get(“WebResource\u EmbeddedHtmlContent”);
这将使您进入IFRAME的DOM

var destination=customHtml.getObject().contentWindow.document;
这使您可以访问自定义页面上的控件

var customControl=destination.getElementById(“elementToAccess”);
这将获取控件的内容

var contents=customControl.innerHTML;

您的计算机上哪一部分出现故障?

使用jQuery:

$(Xrm.Page.ui.controls.get('IFRAME_TransactionProduct_RA').getObject()).contents().find('#txt').val();
Xrm.Page.ui.controls.get('IFRAME_TransactionProduct_RA').getObject().contentWindow.document.getElementById('txt').value;
纯JS:

$(Xrm.Page.ui.controls.get('IFRAME_TransactionProduct_RA').getObject()).contents().find('#txt').val();
Xrm.Page.ui.controls.get('IFRAME_TransactionProduct_RA').getObject().contentWindow.document.getElementById('txt').value;

您想从Iframe访问CRM表单内的控件还是同一Iframe内的控件?在Iframe aspx页面内(虽然是客户端控件),我想我需要澄清这个问题。我正在尝试从CRM中的javascript web资源(执行页面加载事件)访问iframe页面(aspx文件)中的客户端控件。您能将JS加载到iframe中吗?我通常做的是加载一个包含要显示内容的HTML web资源。在它的头标签中,我可以链接到脚本。另一种方法是将脚本作为web资源,并从激发的事件处理程序调用它。