[英]How to access the webresource controls from another html webresource on CRM 2016 Form?
我在客戶表單中有兩個html webresources,一個包含一個multitab,另一個包含一些圖塊,這些圖塊是使用bootstrap和JQuery進行事件設計的。 要啟動第二個Web資源上存在的圖塊的單擊時,第一個Web資源上存在的選項卡的Click事件。
我先在簡單的html頁面上准備了腳本,所有代碼都在那兒工作了,但是在crm形式上卻沒有。
Webresource_1
//html
<div class="row">
<ul id="tab_container_01" class="nav nav-tabs">
<li id="tab_cases"><a id="ahref_cases" href="#">Cases</a></li>
</ul>
</div>
//script
//Following script is working fine on the same page
<script type="text/javascript">
$("ul.nav-tabs").on("click", "li", function () {
var selectedTabText = ($(this).find("a").text());
var tabs = window.parent.Xrm.Page.ui.tabs;
//Some toggle script
});
</script>
Webresource_2
//html
<div class="panel">
<div> Open Cases </div>
</div>
//script
<script type="text/javascript">
$(".panel").on("click", "div", function () {
// following not working on crm form
$("#tab_cases").addClass('active');
$("#tab_cases").parent().siblings().removeClass('active'); //length 0, id not detecting
//window.parent.$("#tab_cases").parent().siblings().removeClass('active');
/* trigger click event on the li */
//trying to use function written on webresource_1 script
$("#tab_cases").closest("ul.nav-tabs li").trigger('click'); //*Not Triggering*
});
</script>
盡管從技術上講,由於您全都在CRM中,並且不會遇到任何跨域腳本問題,所以這可能有些過頭了,您可以使用Frame1的Window.Post消息與CRM表單進行通信,然后它將與第2幀進行通信。這也意味着您的腳本不必依賴於每個DOM,其他腳本也可以訂閱相同的接口來發布/接收消息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.