고객 양식에 두 개의 HTML 웹 리소스가 있습니다. 하나는 멀티탭이고 두 번째는 이벤트에 부트 스트랩과 JQuery를 사용하여 디자인 된 일부 타일을 포함하고 있습니다. 두 번째 웹 리소스에 타일 클릭에 대한 첫 번째 웹 리소스에 존재하는 탭의 Click 이벤트를 시작하고 싶습니다.CRM 2016 양식의 다른 HTML 웹 리소스에서 webresource 컨트롤에 액세스하는 방법은 무엇입니까?
간단한 HTML 페이지에서 스크립트를 준비했습니다. 모든 코드가 먼저 작동하지만 crm 양식에서는 작동하지 않습니다.
- 첫 번째 webresource에서 JQuery를 사용하여 탭 컨트롤에 액세스하려면 어떻게해야합니까?
- 각 html webresources에 몇 개의 스크립트를 작성했습니다. 다른 html webresource에서 동일한 스크립트/함수를 사용할 수 있습니까?
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>
[Xrm.Page.ui control] (https://msdn.microsoft.com/en-us/library/gg334266(v= crm.8) .aspx # BKMK_webResource)은 Xrm을 사용하여 가능해야한다고 제안합니다. .Page.getControl (arg) .getObject()'를 호출하여 WebResource의 IFRAME을 반환합니다. (아직 나 자신을 시도하지 않았다) – Filburt
예 ... 당신 말이 맞아요, 나는 그것을 볼 수 있습니다. 다음 스크립트를 사용하여 객체를 볼 수 있습니다. window.parent.Xrm.Page.getControl ("WebResource_Tab"). getObject(); – user222419
내가 말했듯이 나 자신을 시도하지는 않았지만 거기에서 DOM에 액세스 할 수 있어야합니다. 베스트 샷은 디버거를 사용하여'getObject()'의 결과를 검사합니다. – Filburt