一、由于Dynamic也是在浏览器上运行的,所以页面源码为html,故我们可以通过js去给对应的标签找到对应的字段绑定click事件
二、在绑定之前我们需要找到ifram页面的id,这里有个坑,ifram页面需要找第一次进入页面的名称,和刷新页面后的名称,两个名称的区别在id后面的数字不一样,我遇到过这样的问题,首次进入页面,页面由0和1两个ifram页面,刷新页面之后0和1的id进行互换,变成了1和0,导致我首次进入页面可以正常触发信息,刷新后功能失常!
三、对应的代码(//该放法需要在页面加载时调用)
function openCreditAudit() { if (!Xrm.Page.data.entity.getId()) return; //页面默认进入为1,刷新后为0 var data = ""; //contentIFrame0,ifram名称,new_credit_auditid字段名称 if (window.top.document.getElementById("contentIFrame0").contentWindow.document.querySelector("#new_credit_auditid")) { data = window.top.document.getElementById("contentIFrame0").contentWindow.document.querySelector("#new_credit_auditid") } else { data = window.top.document.getElementById("contentIFrame1").contentWindow.document.querySelector("#new_credit_auditid") } data.addEventListener('click', function (e) { //逻辑代码块 } , { passive: false, capture: true, once: false } ); }