1

MS Dynamics CRM 2011 のフォームと HTML Web リソースにアタッチしたい JavaScript があります。Xrm オブジェクトが必要です。これは、フォーム コンテキストでは直接、または window.top.Xrm では window.top.Xrm を介して使用できます。 HTML Web リソース。

Xrm が定義されているかどうかを確認する簡単な関数を作成して、フォームで実行しているか、HTML Web リソースで実行しているかを判断できるようにしようと考えました。出発点として、私は JavaScript にまったく慣れていないので、Xrm が存在するかどうかを確認してメッ​​セージを表示するこのコードを作成しました。

alert('Running'); 
if(Xrm) { alert('Yup'); } else { alert('Nope'); }
alert('Done'); 

ただし、これは機能せず、その理由がわかりません。フォーム ロードなどのフォーム イベント内で実行すると、Xrm が存在し、「実行中」、「はい」、「完了」というアラートが表示されます。ただし、Xrm を直接使用できない HTML Web リソースで実行すると、「実行中」というアラートが表示されますが、javascript は次の行で停止します。

助けてください!

4

1 に答える 1

3

が定義されていない場合Xrm、コードは例外を発生ReferenceError: Xrm is not definedさせ、残りの Javascript の実行を停止します。変数の存在を確認するには、次を使用する必要があります。

if (typeof Xrm !== 'undefined') { alert('Yup'); } else { alert('Nope'); }
于 2012-06-20T11:04:27.697 に答える