无法将值输入到webresource iframe网址的查询字符串中。我将字段名称(模式名称)添加到自定义参数(数据)并获取查询字符串(静态)上的字段名称,而不是字段值。
答案 0 :(得分:2)
尽管有帖子说您可以将动态值传递给网络资源的自定义参数(数据),但我的经验与上面的Adi相同,那些参数仅适用于静态值。
在这种情况下,我发现将表单字段的值添加到Web资源中的最简单的替代方法甚至比我尝试的更简单。只需添加:window.parent.
即可访问Xrm.Page
。所以你要做的就是:
var formfieldValue = window.parent.Xrm.Page.getAttribute("CRMFieldSchemaName").getValue();
请勿忘记将其放在网络资源上的javascript标记中:
<script type="text/javascript">
$(function () {
var formfieldValue = window.parent.Xrm.Page.getAttribute("CRMFieldSchemaName").getValue();
});
</script>
答案 1 :(得分:0)
该框用于静态值。要使其动态化,您需要使用Javascript构建IFRAME URL。
我使用XrmIframe作为框架,以使Iframe编码变得简单。重要的部分发生在OnLoad事件中。
请记住,这只是一个基本的例子。
//SDK Iframe helper example
function XrmIframe(sId) {
if (sId == undefined) return;
var xiObject = this;
xiObject.Ctl = Xrm.Page.getControl(sId);
xiObject.Get = function () {
return xiObject.Ctl.getSrc();
}
xiObject.Set = function (sUrl) {
xiObject.Ctl.setSrc(sUrl);
return xiObject;
}
}
//entity onload js
var myIframe;
function OnLoad() {
//construct iframe
myIframe = new XrmIframe("IFRAME_Test");
//load iframe
myIframe.Set("construct url with dynamic values here...")
}