2016-10-13 49 views
0

我正在升級crm 2011到crm 2016 onpremise,由於新版本的新渲染引擎如此之多的javascript代碼無法正常工作。最近有問題,我無法使用JQuery訪問iframe內容的iframe。無法訪問iframe控件在crm 2016表格

var ccControl = $("#WebResource_ccCheckList").contents().find(":checkbox"); if(ccControl) { //Business Logic }

我要訪問的元素是 'myChckboxId' 的ID的HTML輸入: 你同意? 獲取ReferenceError:'$'未定義錯誤儘管$ reference可以在IFrame中使用腳本正常工作。 嘗試以下解決方法修復但不爲我工作:

1)將下面的腳本放在onload上。

if (typeof($) === 'undefined'){ var script = document.createElement('script'); script.src = 'ajax.googleapis.com/.../jquery.min.js'; script.async = false; document.head.appendChild(script);}

2) $(Xrm.Page.ui.controls.get('WebResource_ccCheckList').getObject()).contents().find(':checkbox').val(); Xrm.Page.ui.controls.get( 'WebResource_ccCheckList')。的getObject()是給我的obj但不能含有$工作。

3) Xrm.Page.ui.controls.get("WebResource_ccCheckList").getObject().contentWindow.document.getElementById('myChckboxId');

獲得空

請建議解決這個問題的任何替代方法。

感謝

回答

0

jQuery是仍然存在,它只是你上面:

$ = ($ || parent.$); 
// Now you have $ 
+0

強制性警告:操縱DOM是不是一個好主意(每次更新的代碼可能需要從頭開始重寫) – Alex