列の OnChange イベント (クライアント API 参照)

このイベントは次の状況で発生します: OnChange

  • フォームのカラムのデータが変更され、フォーカスが失われます。 この動作には、ラジオボタンやチェックボックスを使用するようにフォーマットされている Yes/No 列に適用される例外があります。 これらの場合、イベントは、ただちに実行されます。
  • レコードを保存した後など、フォームが更新された際に、サーバー上で変更されたデータを取得して、カラムを更新します。
  • attribute.fireOnchange メソッドが使用されます。

すべての列は OnChange イベントをサポートします。 列内のデータは、 OnChange イベントの前後に検証されます。

OnChange 列がattribute.setValue メソッドを使用してプログラム的に変更された場合、 イベントは発生しません。 値を設定した後にイベントのイベント ハンドラーを実行する場合は、コード内でfireOnchangeメソッドを使用する必要があります。 OnChange formContext.data.entity attribute.... OnChange イベントは、ユーザーがダーティ フォームから移動して変更を破棄するときに列がプログラムによって変更された場合にも発生しません。

注意

ステータス 列はOnChange イベントをサポートしますが、フォーム上の列は読み取り専用であるため、ユーザー操作によってイベントが発生することはありません。 別のスクリプトでは、列に対して fireOnchange メソッドを使用して、このイベントが発生する可能性があります。

注意

OnChange イベントは同期されます。 非同期コードの解決時にアクションを実行または処理する必要があるイベント ハンドラーでは、非同期コードを使用しないでください。 OnChange これにより、解決ハンドラーが、アプリ コンテキストが非同期コードが開始されたときと同じままであると想定している場合に問題が発生します。 また、OnChangeイベント ハンドラーで同期ネットワーク要求を行わないでください。 これにより、アプリが応答しなくなる可能性があります。

このイベントをサポートするメソッド

列のイベントを操作するには、次の3つの方法を使用できます。 OnChange

列 (クライアントAPIリファレンス)
イベント (クライアントAPIリファレンス)
モデル駆動型アプリのフォームとグリッドのイベント