---
sourceDocument: オーストラリア API リファレンス
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/api-reference

 Release :

    - australia

ft:locale :

    - ja-JP

ft:publication_title :

    - オーストラリア API リファレンス

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# g_modal (ネクストエクスペリエンス): クライアント

# g_modal (ネクストエクスペリエンス): クライアント {#ariaid-title1}

* リリースバージョン: Australia
* 
* 更新日 2026年03月12日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：34分

g_modal API を使用すると、モーダルウィンドウを表示してアプリケーションの機能を拡張できます。

この API を使用して、ワークスペースにモーダルを表示します。  
この API を使用すると、次のことができます。

* 入力タイプフィールドをモーダルウィンドウに表示します。
* UI ページや外部リンクなど、フレーム内に何かを表示します。
* ユーザーの確認時にアクションを実行します。
* コンポーネントをロードします。
* HTML を使用してモーダルのコンテンツを入力します。

## g_modal (ネクストエクスペリエンス) - alert(文字列タイトル, 文字列メッセージ, 関数コールバック, スタイルオブジェクト) {#ariaid-title2}

UI アクションに関連するアラートメッセージを表示します。
{#g_modalNX_alert_S_S_F__table_ed2_wwj_xnb__entry__3}{#g_modalNX_alert_S_S_F__g_modal-alert-title-entry}{#g_modalNX_alert_S_S_F__g_modal-message-entry}{#g_modalNX_alert_S_S_F__g_modal-callback-entry}{#g_modalNX_alert_S_S_F__g_modal-alert-style-entry}{#g_modalNX_alert_S_S_F__g_modal-alert-style_buttonTitle-entry}{#g_modalNX_alert_S_S_F__g_modal-alert-style_buttonType-entry}

| 名前 | タイプ | 説明 |
|-|-|-|
| タイトル | 文字列 | オプション。モーダルのヘッダーに表示するタイトル。 デフォルト:アラート |
| メッセージ | 文字列 | モーダル本文に表示するメッセージ。 注: パラメーターを 1 つだけ渡すと、メソッドはそれを message パラメーターとして扱います。 |
| コールバック | 関数 | オプション。フォームが送信され、サーバー上で処理された後に呼び出す関数。 コールバック関数の形式は `callbackFunction(String action_verb, String sys_id, String table, String displayValue) です。` * action_verb:実行された UI アクションの名前。例： * sysverb_cancel (キャンセルボタン) * sysverb_insert (送信ボタン) * sysverb_save (\[保存\] ボタン) * sys_id：影響を受けるレコードの sys_id。 * table:レコードを含むテーブルの名前。 * displayValue：フォームに表示される値。 デフォルト:追加処理なし |
| style | オブジェクト | オプション。モーダルに表示する確認ボタンのスタイル。 "style": { "buttonTitle": "String", "buttonType": "String" } |
| style.buttonTitle | 文字列 | オプション。確認ボタンに表示するテキスト。 デフォルト:OK |
| style.buttonType | 文字列 | オプション。表示する確認ボタンのタイプ。 デフォルト:デフォルト |
[表 : 1. パラメーター]

{#g_modalNX_alert_S_S_F__table_ed2_wwj_xnb} {#g_modalNX_alert_S_S_F__table_fd2_wwj_xnb__entry__2}{#g_modalNX_alert_S_S_F__g_modal-promise-entry}

| タイプ | 説明 |
|-|-|
| Promise | callbackパラメーターが渡された場合、成功した場合は promise を返し、それ以外の場合はエラーを返します。 callbackパラメーターが渡されない場合、メソッドは常に成功を返します。 |
[表 : 2. 返される内容]

{#g_modalNX_alert_S_S_F__table_fd2_wwj_xnb}  
次のコード例は、このメソッドを呼び出して、「担当者のみがこのアクションを終了できます」という警告メッセージを表示する方法を示しています。

    function onClick(g_form) {

      if (g_user.userID != g_form.getValue('assigned_to')) {
        g_modal.alert('Only the assigned to can end this action.');
        return;
      }

      var msg = getMessage("Are you sure you want to take this action?");
      g_modal.confirm(getMessage("Confirmation"), msg, function (confirmed) {
        if (confirmed) {
          g_form.setValue('state', 'closed_complete');
          g_form.save();
        }
      });

      return false;
    }

## g_modal (ネクストエクスペリエンス) - confirm(文字列タイトル, 文字列メッセージ, 関数コールバック, スタイルオブジェクト) {#ariaid-title3}

UI アクションに関連する確認メッセージを表示します。
{#g_modalNX_confirm_S_S_F__table_ed2_wwj_xnb__entry__3}{#g_modalNX_confirm_S_S_F__g_modal-message-entry}{#g_modalNX_confirm_S_S_F__g_modal-callback-entry}{#g_modalNX_confirm_S_S_F__g_modal-style-entry}{#g_modalNX_confirm_S_S_F__g_modal-style_cancelTitle-entry}{#g_modalNX_confirm_S_S_F__g_modal-style_cancelType-entry}{#g_modalNX_confirm_S_S_F__g_modal-style_confirmTitle-entry}{#g_modalNX_confirm_S_S_F__g_modal-style_confirmType-ph}

| 名前 | タイプ | 説明 |
|-|-|-|
| タイトル | 文字列 | オプション。モーダルのヘッダーに表示するタイトル。 デフォルト:確認 |
| メッセージ | 文字列 | モーダル本文に表示するメッセージ。 注: パラメーターを 1 つだけ渡すと、メソッドはそれを message パラメーターとして扱います。 |
| コールバック | 関数 | オプション。フォームが送信され、サーバー上で処理された後に呼び出す関数。 コールバック関数の形式は `callbackFunction(String action_verb, String sys_id, String table, String displayValue) です。` * action_verb:実行された UI アクションの名前。例： * sysverb_cancel (キャンセルボタン) * sysverb_insert (送信ボタン) * sysverb_save (\[保存\] ボタン) * sys_id：影響を受けるレコードの sys_id。 * table:レコードを含むテーブルの名前。 * displayValue：フォームに表示される値。 デフォルト:追加処理なし |
| style | オブジェクト | オプション。モーダルに表示する \[確認\] ボタンと \[キャンセル\] ボタンのスタイル。 "style": { "cancelTitle": "String", "cancelType": "String", "confirmTitle": "String", "confirmType": "String" } |
| style.cancelTitle | 文字列 | オプション。キャンセルボタンに表示するテキスト。 デフォルト:キャンセル |
| style.cancelType | 文字列 | オプション。表示するキャンセルボタンのタイプ。 有効な値： * 確認 (青色の背景) * デフォルト (白い背景) * 破棄 (赤色の背景) デフォルト:confirm |
| style.confirmTitle | 文字列 | オプション。\[確認\] ボタンに表示するテキスト。 デフォルト:OK |
| style.confirmType | 文字列 | オプション。表示する確認ボタンのタイプ。 有効な値： * 確認 (青色の背景) * デフォルト (白い背景) * 破棄 (赤色の背景) デフォルト:デフォルト |
[表 : 3. パラメーター]

{#g_modalNX_confirm_S_S_F__table_ed2_wwj_xnb} {#g_modalNX_confirm_S_S_F__table_fd2_wwj_xnb__entry__2}{#g_modalNX_confirm_S_S_F__g_modal-promise-entry}

| タイプ | 説明 |
|-|-|
| Promise | callbackパラメーターが渡された場合、成功した場合は promise を返し、それ以外の場合はエラーを返します。 callbackパラメーターが渡されない場合、メソッドは常に成功を返します。 |
[表 : 4. 返される内容]

{#g_modalNX_confirm_S_S_F__table_fd2_wwj_xnb}  
次のコード例は、このメソッドを呼び出して、「このアクションを実行してもよろしいですか?」という確認メッセージを表示する方法を示しています。

    function onClick(g_form) {

      if (g_user.userID != g_form.getValue('assigned_to')) {
        g_modal.alert('Only the assigned to can end this action.');
        return;
      }

      var msg = getMessage("Are you sure you want to take this action?");
      g_modal.confirm(getMessage("Confirmation"), msg, function (confirmed) {
        if (confirmed) {
          g_form.setValue('state', 'closed_complete');
          g_form.save();
        }
      });

      return false;
    }

出力:  

<br />

## g_modal (ネクストエクスペリエンス) - confirmDestroy(文字列タイトル, 文字列メッセージ, 関数コールバック, スタイルオブジェクト) {#ariaid-title4}

UI アクションに関連する確認メッセージを表示します。確認ボタンには破壊的なスタイルが表示されます。
{#g_modalNX_confirmDestroy_S_S_F__table_ed2_wwj_xnb__entry__3}{#g_modalNX_confirmDestroy_S_S_F__g_modal-confirmDestroy-title-entry}{#g_modalNX_confirmDestroy_S_S_F__g_modal-message-entry}{#g_modalNX_confirmDestroy_S_S_F__g_modal-callback-entry}{#g_modalNX_confirmDestroy_S_S_F__g_modal-style-entry}{#g_modalNX_confirmDestroy_S_S_F__g_modal-style_cancelTitle-entry}{#g_modalNX_confirmDestroy_S_S_F__g_modal-style_cancelType-entry}{#g_modalNX_confirmDestroy_S_S_F__g_modal-style_confirmTitle-entry}{#g_modalNX_confirmDestroy_S_S_F__g_modal-confirmDestroy-style_confirmType-entry}

| 名前 | タイプ | 説明 |
|-|-|-|
| タイトル | 文字列 | オプション。モーダルのヘッダーに表示するタイトル。 デフォルト:確認 |
| メッセージ | 文字列 | モーダル本文に表示するメッセージ。 注: パラメーターを 1 つだけ渡すと、メソッドはそれを message パラメーターとして扱います。 |
| コールバック | 関数 | オプション。フォームが送信され、サーバー上で処理された後に呼び出す関数。 コールバック関数の形式は `callbackFunction(String action_verb, String sys_id, String table, String displayValue) です。` * action_verb:実行された UI アクションの名前。例： * sysverb_cancel (キャンセルボタン) * sysverb_insert (送信ボタン) * sysverb_save (\[保存\] ボタン) * sys_id：影響を受けるレコードの sys_id。 * table:レコードを含むテーブルの名前。 * displayValue：フォームに表示される値。 デフォルト:追加処理なし |
| style | オブジェクト | オプション。モーダルに表示する \[確認\] ボタンと \[キャンセル\] ボタンのスタイル。 "style": { "cancelTitle": "String", "cancelType": "String", "confirmTitle": "String", "confirmType": "String" } |
| style.cancelTitle | 文字列 | オプション。キャンセルボタンに表示するテキスト。 デフォルト:キャンセル |
| style.cancelType | 文字列 | オプション。表示するキャンセルボタンのタイプ。 有効な値： * 確認 (青色の背景) * デフォルト (白い背景) * 破棄 (赤色の背景) デフォルト:confirm |
| style.confirmTitle | 文字列 | オプション。\[確認\] ボタンに表示するテキスト。 デフォルト:OK |
| style.confirmType | 文字列 | オプション。表示する確認ボタンのタイプ。 デフォルト:destructive |
[表 : 5. パラメーター]

{#g_modalNX_confirmDestroy_S_S_F__table_ed2_wwj_xnb} {#g_modalNX_confirmDestroy_S_S_F__table_fd2_wwj_xnb__entry__2}{#g_modalNX_confirmDestroy_S_S_F__g_modal-promise-entry}

| タイプ | 説明 |
|-|-|
| Promise | callbackパラメーターが渡された場合、成功した場合は promise を返し、それ以外の場合はエラーを返します。 callbackパラメーターが渡されない場合、メソッドは常に成功を返します。 |
[表 : 6. 返される内容]

{#g_modalNX_confirmDestroy_S_S_F__table_fd2_wwj_xnb}  
この例では、赤色の \[キャンセル \] ボタンと青色の \[確認 \] ボタンを持つ確認モーダルが表示されています。

    function callback(value){ 
      value ? console.log("confirm destroy callback") : console.log('cancel callback'); 
    }

    function onClick(g_form) {
      g_modal.confirmDestroy("Confirm Destroy Title", "Confirm Destroy Message", callback, {
        cancelTitle: "Cancel",
        cancelType: "destructive",
        confirmTitle: "Confirm",
        confirmType: "confirm"
      })

      .then( 

        function test() {
          g_form.setValue("state', '7");
        }, 

        function fail() {
          g_form.setValue("state", 2)
        } 
      )
    }

## g_modal (ネクストエクスペリエンス) - richText(String title, String richText, Function callback, String size, String cancelTitle, String confirmTitle, String cancelType, String confirmType, Object resizableConfig) {#ariaid-title5}

渡された HTML を使用してモーダル内のコンテンツを生成するモーダルを表示します。
{#g_modalNX_richText_S_S_F__table_nnj_pgb_h2c__entry__3}{#g_modalNX_richText_S_S_F__g_modal-title-ph}{#g_modalNX_richText_S_S_F__g_modal-richText-richText-entry}{#g_modalNX_richText_S_S_F__g_modal-callback-entry}{#g_modalNX_richText_S_S_F__g_modal-richText-cancelTitle-entry}{#g_modalNX_richText_S_S_F__g_modal-richText-confirmTitle-entry}{#g_modalNX_richText_S_S_F__g_modal-richText-cancelType-entry}{#g_modalNX_richText_S_S_F__g_modal-style_confirmType-ph}{#g_modalNX_richText_S_S_F__g_modal-resizableConfig-entry}{#g_modalNX_richText_S_S_F__g_modal-resizableConfig_enableResizable-entry}{#g_modalNX_richText_S_S_F__g_modal-resizableConfig_resizableMaxHeight-entry}{#g_modalNX_richText_S_S_F__g_modal-resizableConfig_resizableMinHeight-entry}{#g_modalNX_richText_S_S_F__g_modal-resizableConfig_resizableMaxWidth-entry}{#g_modalNX_richText_S_S_F__g_modal-resizableConfig_resizableMinWidth-entry}

| 名前 | タイプ | 説明 |
|-|-|-|
| title | 文字列 | オプション。モーダルのヘッダーに表示するタイトル。 デフォルト:空欄 |
| リッチテキスト | 文字列 | モーダルに表示する HTML コンテンツ。 注: このメソッドは、セキュリティエクスプロイトを引き起こす可能性のある `<![CDATA[<script>]]>` タグ、インライン JavaScript、およびその他の要素を削除します。 |
| コールバック | 関数 | オプション。フォームが送信され、サーバー上で処理された後に呼び出す関数。 コールバック関数の形式は `callbackFunction(String action_verb, String sys_id, String table, String displayValue) です。` * action_verb:実行された UI アクションの名前。例： * sysverb_cancel (キャンセルボタン) * sysverb_insert (送信ボタン) * sysverb_save (\[保存\] ボタン) * sys_id：影響を受けるレコードの sys_id。 * table:レコードを含むテーブルの名前。 * displayValue：フォームに表示される値。 デフォルト:追加処理なし |
| タイトルをキャンセル | 文字列 | オプション。キャンセルボタンに表示するテキスト。 デフォルト:キャンセル |
| 確認タイトル | 文字列 | オプション。\[確認\] ボタンに表示するテキスト。 デフォルト:OK |
| キャンセルタイプ | 文字列 | オプション。表示するキャンセルボタンのタイプ。 有効な値： * 確認 (青色の背景) * デフォルト (白い背景) * 破棄 (赤色の背景) デフォルト:confirm |
| confirmType | 文字列 | オプション。表示する確認ボタンのタイプ。 有効な値： * 確認 (青色の背景) * デフォルト (白い背景) * 破棄 (赤色の背景) デフォルト:デフォルト |
| サイズ変更可能な構成 | オブジェクト | オプション。関連付けられたモーダルのサイズを変更するための設定パラメーター。ユーザーがモーダルのサイズを変更できないようにする場合は、このパラメーターを渡さないでください。 resizableConfig: { enableResizable: Boolean, resizableMaxHeight: Number, resizableMaxWidth: Number, resizableMinHeight: Number, resizableMinWidth: Number } デフォルト:モーダルはサイズ変更できません。 |
| resizableConfigです。サイズ変更可能 | ブール | ユーザーが関連するモーダルのサイズを変更できるかどうかを示すフラグ。 有効な値： * true:モーダルはサイズ変更可能です。サイズ変更ハンドルは、モーダルの境界線に表示されます。 * false:モーダルはサイズ変更できません。 デフォルト値：false |
| resizableConfigです。resizableMaxHeight | 番号 | モーダルのサイズ変更可能な最大の高さ。 データタイプ：数値 単位：ピクセル デフォルト:ウィンドウの高さ。 |
| resizableConfigです。サイズ変更可能な最小高さ | 番号 | モーダルのサイズ変更可能な最小の高さ。 データタイプ：数値 単位：ピクセル デフォルト：600px |
| resizableConfigです。resizableMaxWidth | 番号 | モーダルのサイズ変更可能な最大幅。 データタイプ：数値 単位：ピクセル デフォルト:ウィンドウの幅 |
| resizableConfigです。resizableMinWidth | 番号 | モーダルのサイズ変更可能な最小幅。 データタイプ：数値 単位：ピクセル デフォルト:380px |
[表 : 7. パラメーター]

{#g_modalNX_richText_S_S_F__table_nnj_pgb_h2c} {#g_modalNX_richText_S_S_F__table_onj_pgb_h2c__entry__2}{#g_modalNX_richText_S_S_F__g_modal-promise-entry}

| タイプ | 説明 |
|-|-|
| Promise | callbackパラメーターが渡された場合、成功した場合は promise を返し、それ以外の場合はエラーを返します。 callbackパラメーターが渡されない場合、メソッドは常に成功を返します。 |
[表 : 8. 返される内容]

{#g_modalNX_richText_S_S_F__table_onj_pgb_h2c}  
次のコード例は、関連するモーダルに「This is rich text」というテキストを太字で表示する方法を示しています。

    function callback(value){
      value ? console.log("confirm richtext callback") : console.log('cancel rich text callback'); 
    } 

    function onClick(g_form) {
      g_modal.richText("RichTextTitle", "<b>This is rich text</b>", callback, {
        cancelTitle: "Rich Cancel",
        confirmTitle: "Rich Confirm"
      }) 

      .then(
        function test() {
          g_form.setValue("state', '7"); 
        }, 

        function fail() {
          g_form.setValue("state", 2) 
        }
      )
    }

出力:  

<br />

## g_modal (ネクストエクスペリエンス) - showFields(文字列タイトル、アレイフィールド、関数コールバック、文字列サイズ、文字列 cancelTitle、文字列 confirmTitle、文字列 cancelType、文字列 confirmType、オブジェクト resizableConfig、文字列 instruction) {#ariaid-title6}

指定したフィールドと、デフォルトで \[OK \] ボタンと \[ キャンセル \] ボタンを含むモーダルウィンドウを表示します。
{#g_modalNX_showFields_S_S_F__table_ed2_wwj_xnb__entry__3}{#g_modalNX_showFields_S_S_F__g_modal-showfields-title-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_autoFocus-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_choices-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_choices_displayValue-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_choices_value-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_display_value_list-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_enableMentions-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_label-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_mandatory-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_name-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_referringTable-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_referringRecordId-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_type-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-fields_value-entry}{#g_modalNX_showFields_S_S_F__g_modal-callback-entry}{#g_modalNX_showFields_S_S_F__g_modal-size-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-cancelTitle-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-confirmTitle-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-cancelType-entry}{#g_modalNX_showFields_S_S_F__g_modal-style_confirmType-ph}{#g_modalNX_showFields_S_S_F__g_modal-resizableConfig-entry}{#g_modalNX_showFields_S_S_F__g_modal-resizableConfig_enableResizable-entry}{#g_modalNX_showFields_S_S_F__g_modal-resizableConfig_resizableMaxHeight-entry}{#g_modalNX_showFields_S_S_F__g_modal-resizableConfig_resizableMinHeight-entry}{#g_modalNX_showFields_S_S_F__g_modal-resizableConfig_resizableMaxWidth-entry}{#g_modalNX_showFields_S_S_F__g_modal-resizableConfig_resizableMinWidth-entry}{#g_modalNX_showFields_S_S_F__g_modal-showfields-instruction-entry}

| 名前 | タイプ | 説明 |
|-|-|-|
| タイトル | 文字列 | オプション。モーダルのヘッダーに表示するタイトル。 デフォルト:" " |
| フィールド | オブジェクトのアレイ | モーダルに表示するフィールドのリスト。各フィールドは、個別のオブジェクトで定義されます。渡す fields パラメーターは、指定したフィールドのタイプ (fields.type) によって異なります。 フィールドは、アレイに表示される順序と同じ順序でモーダルに表示されます。 fields: [ { autoFocus: Boolean, choices: "Array", display_value_list: "String", enableMentions: Boolean, label: "String", mandatory: Boolean, name: "String", referringTable: "String", referringRecordId: "String", type: "String", value: "String" } ] |
| 田畑。オートフォーカス | ブール | オプション。モーダルのロード時にフィールドをデフォルトでオートフォーカスするかどうかを示すフラグ。1 つのフィールドでのみ、この値を true に設定する必要があります。 有効な値： * true:オートフォーカス。 * false:オートフォーカスしません。 デフォルト値：false |
| 田畑。選択肢 | オブジェクトのアレイ | fields.typeパラメーターが `choice` に設定されている場合は必須です。関連するリストフィールドに表示するオプションのリスト。選択肢リスト内の各エントリは、 `選択肢` アレイ内の個別のオブジェクトとして指定する必要があります。 たとえば、次のようになります。 choices: [ { displayValue: "String", value: "String } ] |
| 田畑。選択肢。表示値 | 文字列 | オプション。リストフィールドに表示する値。 デフォルト：空欄 |
| fields.choices.value | 文字列 | オプション。リストフィールドに表示される値の内部値。 デフォルト：Null |
| 田畑。display_value_list | 文字列のアレイ | オプション。表示する文字列のリスト。例:`['item1', 'item2', 'item3']` |
| 田畑。enablementions | ブール | fields.type`が html` の場合は必須です。モーダルでユーザーをメンションできるかどうかを示すフラグ。 有効な値： * true:モーダルでユーザーについてメンションできます。 * false:モーダルでユーザーについてメンションできません。 デフォルト値：false |
| fields.label | 文字列 | オプション。モーダルでこのフィールドのラベルとして表示するテキスト。 デフォルト：空欄 |
| 田畑。必須 | ブール | オプション。フィールドが必須かどうかを示すフラグ。 有効な値： * true:フィールドは必須です。 * false:フィールドはオプションです。 デフォルト値：false |
| 田畑。名前 | 文字列 | フィールドの内部名。fields.typeパラメーターが `reference` または `glide_list` に設定されている場合、検索に使用される現在のレコードの参照フィールドになります。 |
| fields.referringTable | 文字列 | fields.typeパラメーターが `reference` または `glide_list` に設定されている場合は必須です。参照元のテーブルの名前。 例: `インシデント` |
| 田畑。referringRecordId | 文字列 | fields.typeパラメーターが `reference` に設定されている場合は必須です。UI アクションフォームで呼び出すレコードのSys_id。 |
| fields.type | 文字列 | モーダルに表示するフィールドのタイプ。 各フィールドタイプには、渡すことができる fields.\<\> 要素のセットがあります。以下の角かっこ \[ \] 内の値は、関連するfieldsタイプでサポートされているfields要素です。 有効な値： * ブーリアン \[autofocus, label, mandatory, name, value\] * choice \[AutoFocus, choices, label, mandatory, name, value\] * domain_id \[label, referingRecordId, referringTable, value\] * [glide_list](https://www.servicenow.com/community/in-other-news/managing-glide-lists/ba-p/2279191) \[autofocus、display_value_list、label、name、mandatory、referingRecordId、referringTable、value\] * html \[autofocus, enableMentions, label, mandatory, name, referingRecordId, referringTable, value\] * reference \[autofocus, label, mandatory, name, reference, referingRecordId, referringTable, value\] * string \[AutoFocus, label, mandatory, name, value\] * textarea \[AutoFocus, label, mandatory, name, value\] |
| fields.value | 文字列 | オプション。フィールドに表示する値。 たとえば、選択フィールドに対して、ユーザープロンプトを表示することができます。 `値:getMessage(' -- Select -- ')` または、参照フィールドの場合は、関連するフォームにフィールドの値を表示できます。 `g_form.getValue('caller_id')` デフォルト：空欄 |
| コールバック | 関数 | オプション。フォームが送信され、サーバー上で処理された後に呼び出す関数。 コールバック関数の形式は `callbackFunction(String action_verb, String sys_id, String table, String displayValue) です。` * action_verb:実行された UI アクションの名前。例： * sysverb_cancel (キャンセルボタン) * sysverb_insert (送信ボタン) * sysverb_save (\[保存\] ボタン) * sys_id：影響を受けるレコードの sys_id。 * table:レコードを含むテーブルの名前。 * displayValue：フォームに表示される値。 デフォルト:追加処理なし |
| size | 文字列 | オプション。 モーダルのサイズ。 有効な値： * fw:全角 * SM:420 x 315 ピクセル * md:600 x 450 px * 長さ:800px x 600px 注: ピクセル値を指定すると、モーダルがブラウザー全体を占めます。たとえば、「1px」を渡すとモーダルは全幅になります。 デフォルト：sm |
| タイトルをキャンセル | 文字列 | オプション。キャンセルボタンに表示するテキスト。 デフォルト:キャンセル |
| 確認タイトル | 文字列 | オプション。\[確認\] ボタンに表示するテキスト。 デフォルト:OK |
| キャンセルタイプ | 文字列 | オプション。表示するキャンセルボタンのタイプ。 有効な値： * 確認 (青色の背景) * デフォルト (白い背景) * 破棄 (赤色の背景) デフォルト:confirm |
| confirmType | 文字列 | オプション。表示する確認ボタンのタイプ。 有効な値： * 確認 (青色の背景) * デフォルト (白い背景) * 破棄 (赤色の背景) デフォルト:デフォルト |
| サイズ変更可能な構成 | オブジェクト | オプション。関連付けられたモーダルのサイズを変更するための設定パラメーター。ユーザーがモーダルのサイズを変更できないようにする場合は、このパラメーターを渡さないでください。 resizableConfig: { enableResizable: Boolean, resizableMaxHeight: Number, resizableMaxWidth: Number, resizableMinHeight: Number, resizableMinWidth: Number } デフォルト:モーダルはサイズ変更できません。 |
| resizableConfigです。サイズ変更可能 | ブール | ユーザーが関連するモーダルのサイズを変更できるかどうかを示すフラグ。 有効な値： * true:モーダルはサイズ変更可能です。サイズ変更ハンドルは、モーダルの境界線に表示されます。 * false:モーダルはサイズ変更できません。 デフォルト値：false |
| resizableConfigです。resizableMaxHeight | 番号 | モーダルのサイズ変更可能な最大の高さ。 データタイプ：数値 単位：ピクセル デフォルト:ウィンドウの高さ。 |
| resizableConfigです。サイズ変更可能な最小高さ | 番号 | モーダルのサイズ変更可能な最小の高さ。 データタイプ：数値 単位：ピクセル デフォルト：600px |
| resizableConfigです。resizableMaxWidth | 番号 | モーダルのサイズ変更可能な最大幅。 データタイプ：数値 単位：ピクセル デフォルト:ウィンドウの幅 |
| resizableConfigです。resizableMinWidth | 番号 | モーダルのサイズ変更可能な最小幅。 データタイプ：数値 単位：ピクセル デフォルト:380px |
| 命令 | 文字列 | オプション。モーダルに表示する指示。このコンテンツは、モーダルタイトルの下、モーダルの最初のフィールドの上に表示されます。 デフォルト:指示は表示されません |
[表 : 9. パラメーター]

{#g_modalNX_showFields_S_S_F__table_ed2_wwj_xnb} {#g_modalNX_showFields_S_S_F__table_fd2_wwj_xnb__entry__2}{#g_modalNX_showFields_S_S_F__g_modal-promise-entry}

| タイプ | 説明 |
|-|-|
| Promise | callbackパラメーターが渡された場合、成功した場合は promise を返し、それ以外の場合はエラーを返します。 callbackパラメーターが渡されない場合、メソッドは常に成功を返します。 |
[表 : 10. 返される内容]

{#g_modalNX_showFields_S_S_F__table_fd2_wwj_xnb}  
次の例は、モーダルウィンドウを使用してユーザーに理由の入力を求め、それをレコードの作業メモフィールドに戻す方法を示しています。then() メソッドは、モーダルが返すものを返す promise を返します。この場合は <var class="keyword varname">fieldValues</var> です。クライアント側の作業メモフィールドは、フィールド値とともに <var class="keyword varname">updatedFields</var> アレイにあります。返されるフィールドは 1 つだけなので、この例ではインデックス位置を <var class="keyword varname">0</var> と仮定します。

    function onClick(g_form) {
        g_modal.showFields({
            title: "Enter your reason",
            fields: [{
                type: 'textarea',
                name: 'work_notes',
                label: getMessage('Reason'),
                mandatory: true
            }],
            size: 'lg'
        }).then(function(fieldValues) {
            g_form.setValue('work_notes', fieldValues.updatedFields[0].value);
            g_form.save();
        });
    }

出力:

次の例は、上記の例を拡張して、選択肢フィールドと参照フィールドを追加します。

    function onClick(g_form) {

        var fields = [{
            type: 'textarea',
            name: 'work_notes',
            label: getMessage('Reason'),
            mandatory: true
        },
        {
            type: 'choice',
            name: 'reason_code',
            label: getMessage('Reason code'),
            value: getMessage(' -- Select -- '),
            choices: [
              {
                displayValue: 'Duplicate',
                value: 'duplicate'
              },
              {
                displayValue: 'Canceled',
                value: 'canceled'
              }
            ],
            mandatory: true
        },
        {
            type: 'reference',
            name: 'caller_id',
            label: getMessage('What is your name?'),
            mandatory: true,
            reference: 'sys_user',
            referringTable: 'incident',
            referringRecordId: g_form.getUniqueValue(),
    	 value: g_form.getValue('caller_id'),
    	 displayValue: g_form.getDisplayValue('caller_id')
        }
      ];

      g_modal.showFields({
        title: "Enter your reason",
        fields: fields,
        size: 'lg'
      }).then(function(fieldValues) {
            g_form.setValue('work_notes', fieldValues.updatedFields[0].value);
            g_form.setValue('caller_id', fieldValues.updatedFields[2].value);
            g_form.save();
      });
    }

出力:

次の例は、このメソッドを使用して、textarea、choices、reference、glide_list、および domain_id フィールドタイプを含むモーダルを表示する方法を示しています。

    function onClick(g_form) {
      var fields = [
        {
          type: 'textarea',
          name: 'work_notes',
          label: getMessage('Reason'),
          mandatory: true
        },
        {
          type: 'choice',
          name: 'reason_code',
          label: getMessage('Reason code'),
          value: getMessage(' -- Select -- '),
          choices: [
            {
              displayValue: 'Duplicate',
              value: 'duplicate'
            },
            {
              displayValue: 'Canceled',
              value: 'canceled'
            }
          ],
          mandatory: true
        },
        {
          type: 'reference',
          name: 'caller_id',
          label: getMessage('What is your name?'),
          mandatory: true,
          referringTable: 'incident',
          referringRecordId: g_form.getUniqueValue(),
          value: g_form.getValue('caller_id')
        },
        {
          type: 'glide_list',
          name: 'watch_list',
          label: 'A list', 
          mandatory: false,
          referringTable: 'incident',
          referringRecordId: g_form.getUniqueValue(),
          value: '628,9ee1,f298d',
          display_value_list: ['item1', 'item2', 'item3']
        },
        {
          label: 'Domain ID',
          type: 'domain_id',
          value: 'c90d4b084a362312013398f051272c0d',
          displayValue: 'TOP/ACME',
          referringRecordId: '552c48888c033300964f4932b03eb092',
          referringTable: 'incident'
        }
      ];

      g_modal.showFields({
        title: "Enter your reason",
        fields: fields,
        size: 'lg'
      }).then(function(fieldValues) {

      });
    }

## g_modal (ネクストエクスペリエンス) - showFrame(文字列 title, 文字列 url, 関数コールバック, 文字列サイズ, 文字列の高さ, 文字列 modalHeight, 文字列 modalWidth, ブール値 showClose, 文字列 autoCloseOn, ブール値 hasLoadingMessage, ブール値 closeOnEscape, ブール値 hideOverlay, Object resizableConfig) {#ariaid-title7}

コンテンツに外部 URL または UI ページへのリンクを使用するモーダルを表示します。
{#g_modalNX_showFrame_S_S_F__table_ed2_wwj_xnb__entry__3}{#g_modalNX_showFrame_S_S_F__g_modal-title-ph}{#g_modalNX_showFrame_S_S_F__g_modal-showFrame-url-entry}{#g_modalNX_showFrame_S_S_F__g_modal-callback-entry}{#g_modalNX_showFrame_S_S_F__g_modal-showFrame-size-entry}{#g_modalNX_showFrame_S_S_F__g_modal-showFrame-height-entry}{#g_modalNX_showFrame_S_S_F__g_modal-showFrame-modalHeight-entry}{#g_modalNX_showFrame_S_S_F__g_modal-showFrame-modalWidth-entry}{#g_modalNX_showFrame_S_S_F__g_modal-showFrame-showClose-entry}{#g_modalNX_showFrame_S_S_F__g_modal-showFrame-autoCloseOn-entry}{#g_modalNX_showFrame_S_S_F__g_modal-showFrame-hasLoadingMessage-entry}{#g_modalNX_showFrame_S_S_F__g_modal-showFrame-closeOnEscape-entry}{#g_modalNX_showFrame_S_S_F__g_modal-showFrame-hideOverlay-entry}{#g_modalNX_showFrame_S_S_F__g_modal-resizableConfig-entry}{#g_modalNX_showFrame_S_S_F__g_modal-resizableConfig_enableResizable-entry}{#g_modalNX_showFrame_S_S_F__g_modal-resizableConfig_resizableMaxHeight-entry}{#g_modalNX_showFrame_S_S_F__g_modal-resizableConfig_resizableMinHeight-entry}{#g_modalNX_showFrame_S_S_F__g_modal-resizableConfig_resizableMaxWidth-entry}{#g_modalNX_showFrame_S_S_F__g_modal-resizableConfig_resizableMinWidth-entry}

| 名前 | タイプ | 説明 |
|-|-|-|
| title | 文字列 | オプション。モーダルのヘッダーに表示するタイトル。 デフォルト:空欄 |
| URL | 文字列 | IFrame にロードする情報の URL。 注: 引数が 1 つだけ渡された場合は、 url パラメーターとして扱われます。 |
| コールバック | 関数 | オプション。フォームが送信され、サーバー上で処理された後に呼び出す関数。 コールバック関数の形式は `callbackFunction(String action_verb, String sys_id, String table, String displayValue) です。` * action_verb:実行された UI アクションの名前。例： * sysverb_cancel (キャンセルボタン) * sysverb_insert (送信ボタン) * sysverb_save (\[保存\] ボタン) * sys_id：影響を受けるレコードの sys_id。 * table:レコードを含むテーブルの名前。 * displayValue：フォームに表示される値。 デフォルト:追加処理なし |
| サイズ | 文字列 | オプション。モーダルのサイズ。 有効な値： * fw:全角 * SM:420px x 253.25px * md:600px x 253.25px * 長さ:800px x 254px デフォルト:lg |
| 高さ | 文字列 | オプション。モーダルのコンテンツセクションの高さ。この値は、「80%」や「300px」などの「\<number\>\<unit\>」の形式です。数値のみを渡した場合、メソッドは測定単位をピクセルと見なします。 有効な測定単位: * パーセンテージ * em * px * VH デフォルト:100% または 153.75px |
| モーダルの高さ | 文字列 | オプション。モーダルの高さ。この値は、「80%」や「300px」などの「\<number\>\<unit\>」の形式です。数値のみを渡した場合、メソッドは測定単位をピクセルと見なします。 有効な測定単位: * パーセンテージ * em * px * VH デフォルト:254px |
| モーダルの幅 | 文字列 | オプション。モーダルの幅。この値は、「80%」や「300px」などの「\<number\>\<unit\>」の形式です。数値のみを渡した場合、メソッドは測定単位をピクセルと見なします。 有効な測定単位: * パーセンテージ * em * px * VH デフォルト:800px |
| showClose | ブール | オプション。モーダルの右上隅に閉じるアイコン (X) を表示するかどうかを示すフラグ。 有効な値： * true:閉じるアイコンを表示します。 * false:閉じるアイコンを表示しません。 デフォルト：true |
| autoCloseOn | 文字列 | オプション。モーダルを自動的にクローズする条件。 有効な値： * EMPTY_BODY * URL_CHANGED デフォルト:モーダルを自動的に閉じません。 |
| hasLoadingMessage | ブール | オプション。モーダルコンテンツをロードする前に、モーダルのコンテンツスロットに \[読み込み中... \] メッセージを表示するかどうかを示すフラグ。 有効な値： * true:ロードメッセージを表示します。 * false:ロードメッセージを表示しません。コンテンツがロードされる前は、モーダルのコンテンツスロットが空です。 注: 「ロードしています...」をカスタマイズすることはできません。メッセージ;表示するかどうかのみを設定します。 デフォルト値：false |
| エスケープを閉じる | ブール | オプション。ユーザーが Esc キーを押してモーダルを閉じることができるかどうかを示すフラグ。 有効な値： * true:ユーザーがエスケープキーを押すとモーダルが閉じます。 * false:ユーザーが Esc キーを押してもモーダルは閉じません。 デフォルト値：false |
| オーバーレイを非表示 | ブール | オプション。レコードページに透明なグレーのオーバーレイを表示するかどうかを示すフラグ。 有効な値： * true:レコードページ上の透明なグレーのオーバーレイを非表示にします。 * false:レコードページ上に透明なグレーのオーバーレイを表示します。 デフォルト値：false |
| サイズ変更可能な構成 | オブジェクト | オプション。関連付けられたモーダルのサイズを変更するための設定パラメーター。ユーザーがモーダルのサイズを変更できないようにする場合は、このパラメーターを渡さないでください。 resizableConfig: { enableResizable: Boolean, resizableMaxHeight: Number, resizableMaxWidth: Number, resizableMinHeight: Number, resizableMinWidth: Number } デフォルト:モーダルはサイズ変更できません。 |
| resizableConfigです。サイズ変更可能 | ブール | ユーザーが関連するモーダルのサイズを変更できるかどうかを示すフラグ。 有効な値： * true:モーダルはサイズ変更可能です。サイズ変更ハンドルは、モーダルの境界線に表示されます。 * false:モーダルはサイズ変更できません。 デフォルト値：false |
| resizableConfigです。resizableMaxHeight | 番号 | モーダルのサイズ変更可能な最大の高さ。 データタイプ：数値 単位：ピクセル デフォルト:ウィンドウの高さ。 |
| resizableConfigです。サイズ変更可能な最小高さ | 番号 | モーダルのサイズ変更可能な最小の高さ。 データタイプ：数値 単位：ピクセル デフォルト：600px |
| resizableConfigです。resizableMaxWidth | 番号 | モーダルのサイズ変更可能な最大幅。 データタイプ：数値 単位：ピクセル デフォルト:ウィンドウの幅 |
| resizableConfigです。resizableMinWidth | 番号 | モーダルのサイズ変更可能な最小幅。 データタイプ：数値 単位：ピクセル デフォルト:380px |
[表 : 11. パラメーター]

{#g_modalNX_showFrame_S_S_F__table_ed2_wwj_xnb} {#g_modalNX_showFrame_S_S_F__table_fd2_wwj_xnb__entry__2}{#g_modalNX_showFrame_S_S_F__g_modal-showFrame-return-Promise-entry}

| タイプ | 説明 |
|-|-|
| Promise | 成功した場合は promise を返し、それ以外の場合はエラーを返します。この約束は、IFrame モーダルがクローズされると解決されます。 |
[表 : 12. 返される内容]

{#g_modalNX_showFrame_S_S_F__table_fd2_wwj_xnb}  
次の例は、KB 記事レコードのsys_idとベース URL を使用して、モデルに KB 記事を表示する方法を示しています。

    function onClick(g_form) {
      var kbId = '24d9243187032100deddb882a2e3ec33'; //sysId of KB article
      g_modal.showFrame({
        url: '/kb_view.do?sys_kb_id=' + kbId,
        title: 'Test Knowledge Article',
        size: 'lg',
        height: 500px
      });
    }

出力:

この例では、モーダルを作成するときに埋め込み UI ページを使用する方法を示します。g_form API が iFrame にあるときは UI ページでアクセスできないため、UI ページで window.parent.postMessage() を使用して iFrame からワークスペースにデータを渡します。

    function onClick(g_form) {
      function proposeMIC(data) {
        var workNotes = data.msg + "\n" + data.workNotes;
        var notes = g_form.getValue('work_notes') + ' ' + workNotes;
        var bi = g_form.getValue('business_impact') + ' ' + data.businessImpact;
        g_form.setValue('work_notes', notes.trim());
        g_form.setValue('business_impact', bi.trim());
        g_form.submit('sysverb_mim_propose');
      }
    	
      function openPopup() {
        if(!g_form.getControl('work_notes')) {
          getMessage('Cannot propose major incident as "Worknotes" is not visible', function(msg) {
    	 g_form.addErrorMessage(msg);
          });
          return false;
        }

        var url = "/sn_major_inc_mgmt_mim_propose.do?sysparm_stack=no&sysparm_workspace=" + true;
        g_modal.showFrame({
          title: getMessage("Propose Major Incident"),
          url: url,
          size: 'lg',
          autoCloseOn: 'URL_CHANGED',
          callback: function (ret, data) {
            if (ret)
              proposeMIC(data);
          }
        });
      }
    	
      openPopup();
    }

出力:  

<br />


