ラベルを非表示にする


概要

通常にフィールドを定義すると入力フィールドの上にラベル(下の例では「Field 1」)が表示される。このラベルをUIページで非表示にする。

注意:
1. 本手順はDOM操作を行います。XSSの危険があるため、ServiceNowはDOM操作を推奨していません。
2. DOM操作はUIページでは有効ですが、サービスポータルではエラーになります。

手順

  1. フィールドを定義して「Try It」でページを表示する
  2. 入力フィールドを右クリックして「要素の調査」を選択(Firefoxの場合)
  3. ページの下にHTMLソースコードが表示される。入力フィールドのコードがハイライトされる。そのフィールドの上のidが「label」から始まるdivを探す。
  4. 「label」から始まるdivを右クリックして「コピー」-「XPath」を選択して内容をテキストエディタに張り付ける
  5. 新しいonLoadクライアントスクリプトを作成する。
  6. 「Isolate script」のチェックを外して、次のスクリプトを追加する。document.getElementById()の内容は上で取得した内容を張り付けてID以外の部分は削除する
    function onLoad() {
    document.getElementById("label_IO:9e7fa2bc2fb8e0103c515e972799b6d5").style.display = "none";
    }

  7. ページを再表示してラベルで表示なことを確認する

便利機能:
「document.getElementById」の代わりに「gel」で省略することが可能。

function onLoad() {
    gel("label_IO:9e7fa2bc2fb8e0103c515e972799b6d5").style.display = "none";
}

以上