3

フォームのコンテキストでリボン ボタンが押されたときに呼び出されるカスタム JS 関数を用意します。私のカスタム JS 関数では、リボン ボタンが押される直前にどのフォーム フィールドにフォーカスがあったかを知る必要があります。私は2つの方法(以下)を試しましたが成功しませんでした。これを確実に行う方法はありますか?

方法#1

thisによると、必要なコントロールをパラメーターとして JS に渡すことができます。PrimaryControlIdPrimaryControlパラメータの両方を使用してみました。

<JavaScriptFunction FunctionName="OnCustomBtnFunc" 
                    Library="$webresource:myJSfile.js">
   <CrmParameter Value="PrimaryControlId" />
   <CrmParameter Value="PrimaryControl" />
</JavaScriptFunction>

両方について、OnCustomBtnFunc() に渡されたオブジェクトを取得しますが、リボン ボタンが押される前にどのフォーム コントロールにフォーカスがあったかを判断できないようです。

方法 2

Xrm.Page.ui.getCurrentControl()を呼び出します。これは、一部のタイプのフォーム フィールドでは機能しますが、他のタイプでは機能しません。たとえば、文字列フィールドの場合は機能しますが、ルックアップでは null になります。

4

1 に答える 1