2017-05-05 51 views
0

我們在窗體上使用控件的名稱屬性(「WebResource_MyWebResource」)具有嵌入式HTML Web資源。動態CRM動態獲取HTML webresource父控件

是否有一種方法可以在HTML網頁資源中使用,它允許我們動態獲取它自己的父控件的名稱屬性,或者我們需要傳入網絡資源控件名稱作爲數據參數來使用它在腳本中通過parent.Xrm.Page.getControl(arg)

我們不希望對資源名稱進行硬編碼,因爲它的通用功能並不一定知道最終用戶將給控件的名稱。

+0

檢查'window.name',可能是你在做什麼。 – Alex

+0

@Alex我剛剛嘗試了一個警報來查看它打印的內容,但它只是返回一個空白警報。 –

回答

4

我一直想要一個簡單的方法來這個讓自己終於把時間而回弄明白:

var win = document.defaultView || document.parentWindow; /* parentWindow for IE8- */ 
var parentIframeId = win.frameElement.id; 

上面的代碼從你的網絡資源執行將讓你的ID時包含網絡資源的iframe元素。

+0

看起來不錯,似乎在伎倆,謝謝。在我標記爲答案之前,Dynamics中是否支持此方法?由於這是一個灰色區域,因爲它是從we​​b資源腳本(它將被支持的地方)跨越到Xrm頁面腳本的地方,其中'document.xyz'(將不被支持)。我希望能有一個'parent.Xrm'函數來實現這一目標,但似乎並非如此。 –

+0

是的,它是受支持的,因爲您不修改或依賴CRM DOM的結構(不保證保持不變)。 – Polshgiant