前のトピック: 個々のウィンドウでのフォーム プロパティの表示次のトピック: フォーム要素の関数


フォーム要素のイベント

onBlur

フォーム要素からフォーカスが移動したときに発生します。 たとえば、フォームに[ユーザ名]フィールドが含まれるとします。 ユーザは、Tab キーを使用してそのフィールドに移動する、またはそのフィールドをクリックすることによって、フィールドにフォーカスを設定します。 ユーザが以下のアクションのいずれかを実行すると、onBlur イベントが発生します。

onChange

フォーム要素からフォーカスが移動し、フォーム要素の新しい値がその古い値とは異なるときに発生します。 たとえば、あるフォームに 10 の値を持った[数量]というフィールドが含まれるとします。 ユーザが 15 に値を変更した後、ユーザは別のフィールドにフォーカスを移動させません。 onChange イベントは、ユーザが以下のアクションのいずれかを実行した後でのみ発生します。

onClick

ユーザがフォーム要素をクリックするときに発生します。 クリックが有効とされるには、同じオブジェクトに対する onMouseDown と onMouseUp の両方のイベントが含まれている必要があります。 この要件は、マウスがクリック可能なオブジェクト上にある必要があるので、関数や別のコードが誤って呼び出されるのを防ぐことができます。

onFocus

フォーム要素にフォーカスが移動したときに発生します。 フォーカスを確立するには、ユーザが Tab キーを使用してフォーム要素に移動するか、フォーム要素をクリックします。 また、フォーム要素にフォーカスを置くスクリプトやコードを書くこともできます。

onKeyDown

ユーザがキーを初めて押したとき(たとえば、ユーザが Tab キーを使用して[名前]フィールドに移動するか、[名前]フィールドをクリックするとき)に発生します。 ユーザが数字キーを入力しようとすると、[名前]フィールドの onKeyDown イベントと関連付けられたスクリプトによってアラートが発生します。

onKeyPress

ユーザがキーを押し、そのキーを押したままにしたときに発生します。 たとえば、ユーザが Tab キーを押して[名前]という選択フィールドに移動するか、この選択フィールドをクリックし、アルファベットを表すキーを押す場合に onKeyPress イベントが発生します。 [名前]フィールドの onKeyPress イベントに対応するスクリプトによって、押されたアルファベットのキーに一致する名前が繰り返し表示されます。

onKeyUp

ユーザがキーを押した後でキーから手を放したときに発生します。 たとえば、onKeyUp イベントは、ユーザが Tab キーを使用して「Temperature」という名前の スピナー フィールドに移動したか、このフィールドをクリックしたときに発生します。 ユーザが特定のキーを押したり、放したりするたびに、このイベントに関連付けられたスクリプトによって、そのフィールド値が増減されます。

onLoad

ユーザが入力するフォームが初めて表示されたときに発生するイベント。

onLookup

ユーザがルックアップ フィールドの[参照]をクリックして、ほかのフィールドの値に基づいて計算された値を表示した(またはスクリプトに従って「検索した」)ときに発生します。

onMouseDown

ユーザがフォーム要素の上でマウスの左ボタンを押したときに発生します。

onMouseMove

ユーザがフォーム要素の境界の内側でマウス ポインタを動かしたときに発生します。

onMouseOut

ユーザがフォーム要素の境界の外側でマウス ポインタを動かしたときに発生します。

onMouseOver

ユーザがフォーム要素の上にマウス ポインタを動かし、マウスの動きを止めたときに発生します。

onMouseUp

ユーザがフォーム要素の上でマウス ボタンを押した後で、マウスの左ボタンを放したときに発生します。

onMouseWheel

ホイール ボタンがあるマウスを使用しているユーザが、ホイールを前後に動かしてフォーム要素をスクロールしたときに発生します。

onSubmit

ユーザがフォームをサブミットしたときに発生します。 以下のどのアクションでも、フォームをサブミットできます。

onValidate

以下のアクションのいずれかが発生する前に、ビジネス ルールに照らして関連するコードによってフィールド値が検証されるときに発生します。

たとえば、ユーザが[シリアル番号]フィールドに Tab キーを使用して移動するか、このフィールドをクリックするとします。このフィールドの値は文字「SN」で始まり、10 桁の数値を指定する必要があります。 ユーザが Tab キーを押して次のフィールドに移動するか、クリックをしてほかへ移動する前に、onValidate イベントに対応するコードによってデータが検証されます。 シリアル番号が検証ルールに適合しない場合には、ユーザに対してアラートを発生させ、それらのエントリを調整することができます。

フィールド入力のカスタム検証に onValidate を使用できます。 たとえば、フィールド入力で、長さが少なくとも 3 文字であることを確認するには、[スクリプト]ダイアログ ボックスでカスタム機能を書き込むことができます。

validateValue:function(_val) {
if(_val.length < 3) {
return "Please enter more than 3 characters for this field";
} else {
return null;
}

[フォーム デザイナ]で、検証を実行するテキスト フィールド用の onValidate 属性値を含めます。 例:

ca_fd.js.validateValue(_val)

スクリプトが実行されるときに、カスタム関数は正しいフィールド値で必要なパラメータ _val を置換します。

検証スクリプトが NULL 値を返す場合、フィールド入力は検証に成功します。 そうでない場合、フィールド入力は検証に失敗し、スクリプトはエラー(たとえば「このフィールドに 4 文字以上入力してください」など)を返します。