フォームの入力者のインタラクションに応答するフィールドのハイライト表示

この例は、フォームの入力者が現在使用しているフィールドをハイライト表示する方法、フォームの入力者が入力する必要のあるフィールドをハイライト表示する方法およびメッセージボックスを使用してフォームの入力者に対するフィードバックを入力する方法を示しています。

この例では、必須フィールドの右側にアスタリスク(*)が表示されます。フィールドを選択すると、フィールドの境界線の色が青に変更されます。フォームの入力者が必須フィールドに入力せずに「データを確認」ボタンをクリックすると、メッセージが表示され、フィールドの色が赤に変更されます。フォームの入力者がすべての必須フィールドに入力し、「データを確認」ボタンをクリックすると、確認メッセージが表示されます。

このスクリプティング例とその他の情報については、LiveCycle デベロッパーセンターを参照してください。

選択したフィールドの青色の境界線を追加するためのスクリプティング

選択したフィールドの青色の境界線を追加するには、各テキストフィールドに次のスクリプトを追加します。

例えば、「名前」フィールドに enter イベントを追加します。

    Name.border.edge.color.value = "0,0,255";

例えば、「名前」フィールドに exit イベントを追加します。

    Name.border.edge.color.value = "255,255,255";

例えば、「名前」フィールドに mouseEnter イベントを追加します。

    Name.border.edge.color.value = "0,0,255";

例えば、「名前」フィールドに mouseExit イベントを追加します。

    Name.border.edge.color.value = "255,255,255";

「データを確認」ボタンのスクリプティング

「データを確認」ボタン用に作成された次のスクリプトは、一連のチェックを実行して必須フィールドにデータが入力されていることを確認します。この場合は、各フィールドを個別にチェックして、フィールドの値が null 以外または空の文字列以外であることを確認します。フィールドの値が null または空の文字列の場合は、フィールドへのデータの入力が必要であることを示す警告メッセージが表示され、入力可能な領域の背景色が赤に変更されます。

フィールドにデータが入力されていないかどうかを示すには、次の変数を使用します。

    var iVar = 0; 
 
    if ((Name.rawValue == null) || (Name.rawValue == "")) { 
        xfa.host.messageBox("Please enter a value in the Name field.");

次のスクリプトでは、テキストフィールドの入力可能な領域の色を変更します。

        xfa.resolveNode("Name.ui.#textEdit.border.edge").stroke = "solid"; 
        xfa.resolveNode("Name.ui.#textEdit.border.fill.color").value = "255,100,50"; 
 
        // Set the variable to indicate that this field does not contain data.     
        iVar = 1; 
    } 
    else { 
        // Reset the fillable area of the text field. 
        xfa.resolveNode("Name.ui.#textEdit.border.edge").stroke = "lowered"; 
        xfa.resolveNode("Name.ui.#textEdit.border.fill.color").value = "255,255,255"; 
    } 
 
    if ((Address.rawValue == null) || (Address.rawValue == "")) { 
        xfa.host.messageBox("Please enter a value in the Address field.");

次のスクリプトでは、テキストフィールドの入力可能な領域の色を変更します。

        xfa.resolveNode("Address.ui.#textEdit.border.edge").stroke = "solid"; 
        xfa.resolveNode("Address.ui.#textEdit.border.fill.color").value = "255,100,50";

次のスクリプトでは、フィールドにデータが入力されていないことを示す変数を設定します。

        iVar = 1; 
    } 
    else {

次のスクリプトでは、テキストフィールドの入力可能な領域をリセットします。

        xfa.resolveNode("Address.ui.#textEdit.border.edge").stroke = "lowered"; 
        xfa.resolveNode("Address.ui.#textEdit.border.fill.color").value = "255,255,255"; 
    } 
 
    if ((City.rawValue == null) || (City.rawValue == "")) { 
        xfa.host.messageBox("Please enter a value in the City field.");

次のスクリプトでは、テキストフィールドの入力可能な領域の色を変更します。

        xfa.resolveNode("City.ui.#textEdit.border.edge").stroke = "solid"; 
        xfa.resolveNode("City.ui.#textEdit.border.fill.color").value = "255,100,50";

次のスクリプトでは、フィールドにデータが入力されていないことを示す変数を設定します。

        iVar = 1; 
    } 
    else {

次のスクリプトでは、テキストフィールドの入力可能な領域をリセットします。

        xfa.resolveNode("City.ui.#textEdit.border.edge").stroke = "lowered"; 
        xfa.resolveNode("City.ui.#textEdit.border.fill.color").value = "255,255,255"; 
    } 
 
    if ((State.rawValue == null) || (State.rawValue == "")) { 
        xfa.host.messageBox("Please enter a value in the State field.");

次のスクリプトでは、テキストフィールドの入力可能な領域の色を変更します。

        xfa.resolveNode("State.ui.#textEdit.border.edge").stroke = "solid"; 
        xfa.resolveNode("State.ui.#textEdit.border.fill.color").value = "255,100,50";

次のスクリプトでは、フィールドにデータが入力されていないことを示す変数を設定します。

        iVar = 1; 
    } 
    else {

次のスクリプトでは、テキストフィールドの入力可能な領域をリセットします。

        xfa.resolveNode("State.ui.#textEdit.border.edge").stroke = "lowered"; 
        xfa.resolveNode("State.ui.#textEdit.border.fill.color").value = "255,255,255"; 
    } 
 
    if ((ZipCode.rawValue == null) || (ZipCode.rawValue == "")) { 
        xfa.host.messageBox("Please enter a value in the Zip Code field.");

次のスクリプトでは、テキストフィールドの入力可能な領域の色を変更します。

        xfa.resolveNode("ZipCode.ui.#textEdit.border.edge").stroke = "solid"; 
        xfa.resolveNode("ZipCode.ui.#textEdit.border.fill.color").value = "255,100,50";

次のスクリプトでは、フィールドにデータが入力されていないことを示す変数を設定します。

        iVar = 1; 
    } 
    else {

次のスクリプトでは、テキストフィールドの入力可能な領域をリセットします。

        xfa.resolveNode("ZipCode.ui.#textEdit.border.edge").stroke = "lowered"; 
        xfa.resolveNode("ZipCode.ui.#textEdit.border.fill.color").value = "255,255,255"; 
    } 
 
    if ((Country.rawValue == null) || (Country.rawValue == "")) { 
        xfa.host.messageBox("Please enter a value in the Country field.");

次のスクリプトでは、テキストフィールドの入力可能な領域の色を変更します。

        xfa.resolveNode("Country.ui.#textEdit.border.edge").stroke = "solid"; 
        xfa.resolveNode("Country.ui.#textEdit.border.fill.color").value = "255,100,50";

次のスクリプトでは、フィールドにデータが入力されていないことを示す変数を設定します。

        iVar = 1; 
    } 
    else {

次のスクリプトでは、テキストフィールドの入力可能な領域をリセットします。

        xfa.resolveNode("Country.ui.#textEdit.border.edge").stroke = "lowered"; 
        xfa.resolveNode("Country.ui.#textEdit.border.fill.color").value = "255,255,255"; 
    }

すべての必須フィールドにデータが入力されている場合は、iVar 変数が 0 に設定され、確認メッセージが表示されます。

        if (iVar == 0) { 
            xfa.host.messageBox("Thank you for inputting your information."); 
        }