1

私の CRM Dynamics 365 ソリューションには、Web リソース A が埋め込まれたフォームがあります。この Web リソース A は、 を使用してポップアップ ウィンドウで別の Web リソース B を開きますwindow.open。もちろん、オープニングは を使用して行うこともでき Xrm.Utility.openWebResourceます。

webresource B で jQuery を利用したいと考えています。CRM 自体が jQuery をいくつかのバージョンでロードしていることを認識しています。これは、ネットワーク リクエストを監視し、jquery をフィルタリングするときに簡単に見つけることができます。

問題は、webresource B が jQuery または $ 変数に「アクセス」できないことです。問題は、jQuery を使用するために何をすることをお勧めするかです。考えられる解決策のリストに優先順位を付けました。

  1. 独立したバージョンの jQuery を使用して Web リソースを読み込む
  2. 思いつかなかった選択肢
  3. CDN から読み込む
  4. 読み込まれたすべてのスクリプトを jQuery で探し、URL を webresource B に渡して、それ自体で読み込むことができるようにします (ほぼハック)。
  5. jQuery を避け、vanilla JS を使用する

更新: jQuery を使用する主な理由は、ポップアップ ウィンドウのサイズに応じて webresource B を表示するポップアップ ウィンドウに埋め込まれた iframe (ランダムなコンテンツを含む) のサイズを簡単に変更することでした。

jQuery を完全に廃止し、代わりに CSS を使用することにしました。私の解決策はこれになり、Google Chrome、Windows Edge、および Internet Explorer 11 でうまく機能します。

#externalframe {
    width: 100%;
    height: 100%;
    display: block;
    float: left;
}
4

2 に答える 2

1

jsquery にアクセスできる場合はwebresourceA、jquery が CRM に (Web リソースとして) 既に存在することを意味します。jquery の url(path) を見つけて、参照として追加しwebresourceBます。それだけです。

于 2017-11-15T11:29:25.157 に答える