# Web ページの HMI スクリプト

Web ページの HMI スクリプトは JavaScript をベースとし、HTML 5 をサポートしています。

Web ページの HMI スクリプトはスクリプトエディタを使用して作成され、以下の特徴があります。

- ジョブがオンラインの場合にのみ、Web ブラウザで実行されます。
- タグはスクリプトの開始時に保存されます。Web ページの HMI スクリプトの実行中に他のシステム コンポーネントによってタグ値が更新されても、その変更は Web ページの HMI スクリプト内のタグ値には影響を与えません。Web ページの HMI スクリプトが完了すると、更新されたタグ値がタグに書き戻され、Web ページの HMI スクリプトの実行中にタグに加えられた他の変更も上書きされます。

- HMI のみに影響するアクションには、Web ページ要素のイベントハンドラスクリプトを使用します。直ちに更新する必要があるアクションでは、コード内で Promise を使用します。Promise は、Web ページスクリプトの戻り値を取得して、依存するスクリプトコードを実行するために使用します。

  注: Promise の使用の詳細については、「Web ページの JavaScript の Promise」のトピックを参照してください。

- Web ページ要素のイベントハンドラスクリプト

  これらのスクリプトは、On Mouse Enter、On Mouse Up、On Changed など、Web ページ要素のイベントで使用されます。

Web ページの HMI スクリプトを使用して以下を操作できます。

- Web ページ要素のプロパティ。タグ (Web ページ要素のプロパティタグ) として公開されます。

  これにより、スライダ要素の [値] プロパティやテキストボックス要素の [テキスト] プロパティなどの要素のプロパティに、タグを使用してアクセスできます。

  次に例を示します。

      $MyTag = 45;

      console.log($MyErrorMessageTag);

      $WebPages.WebPage.TextBox.Text = "new text";

      $WebPages.WebPage.DataTable.Content = { Header: ["Header1"], Data: [ ["test"], ["test2] ] }

      $WebPages.WebPage.DataTable.Content = new TableData(["Header1"], [ ["test"], ["test2"] ] )

  注: DataTable の 2 つの例は同じ結果を生成します。

注:

- JavaScript プログラミング言語の詳細については、以下を参照してください (インターネットへのアクセスが必要です)。

  - Mozilla JavaScript ガイド
  - Mozilla JavaScript 言語リファレンス
  - 『JavaScript:The Definitive Guide』、David Flanagan 著