2012-06-20 2 views
1

MS 역학 CRM 2011에서 양식과 HTML 웹 리소스에 첨부 할 JavaScript가 있습니다. Xrm 개체가 필요합니다 이는 양식 컨텍스트에서 직접 사용하거나 HTML 웹 리소스에서 window.top.Xrm을 통해 사용할 수 있습니다.CRM2011에서 Xrm 개체/기능이 없음을 감지 할 수없는 이유는 무엇입니까?

Xrm이 정의되어 있는지 여부를 확인하는 빠른 함수를 작성하여 양식 또는 HTML 웹 리소스에서 실행 중인지 여부를 결정할 수 있다고 생각했습니다. 시작점으로, 저는 Javascript를 처음 사용하기 때문에이 코드를 작성하여 Xrm이 존재하는지 확인하고 메시지를 표시합니다.

그러나 이것은 작동하지 않으며 그 이유를 이해할 수 없습니다. 양식로드와 같은 양식 이벤트 내에서 실행되면 Xrm이 나타나고 "실행 중", "예"및 "완료"라는 경고가 표시됩니다. 그러나 Xrm을 직접 사용할 수없는 HTML 웹 리소스에서 실행할 때 "실행 중"경고가 표시되지만 javascript는 다음 줄에서 중지됩니다.

도와주세요!

답변

3

Xrm이 정의되지 않은 경우 코드에서 예외 ReferenceError: Xrm is not defined이 발생하고 나머지 자바 스크립트는 실행이 중지됩니다. 변수가 있는지 확인하려면 다음을 사용해야합니다.

if (typeof Xrm !== 'undefined') { alert('Yup'); } else { alert('Nope'); } 
+2

감사합니다. 나는 JavaScrip 학습 곡선의 시작 부분에 있으며이 것들이 실제로 나를 혼란스럽게합니다. 내 jQuery 책에서 나는 (Xrm) 같은 일을 봤어. 여기의 차이점은 무엇입니까? – Richard

관련 문제