概要
通常にフィールドを定義すると入力フィールドの上にラベル(下の例では「Field 1」)が表示される。このラベルをUIページで非表示にする。
注意:
- 本手順はDOM操作を行います。XSSの危険があるため、ServiceNowはDOM操作を推奨していません。
- DOM操作はUIページでは有効ですが、サービスポータルではエラーになります。
手順
- フィールドを定義して「Try It」でページを表示する
- 入力フィールドを右クリックして「要素の調査」を選択(Firefoxの場合)
- ページの下にHTMLソースコードが表示される。入力フィールドのコードがハイライトされる。そのフィールドの上のidが「label」から始まるdivを探す。
- 「label」から始まるdivを右クリックして「コピー」-「XPath」を選択して内容をテキストエディタに張り付ける
- 新しいonLoadクライアントスクリプトを作成する。
- 「Isolate script」のチェックを外して、次のスクリプトを追加する。document.getElementById()の内容は上で取得した内容を張り付けてID以外の部分は削除する
function onLoad() { document.getElementById("label_IO:9e7fa2bc2fb8e0103c515e972799b6d5").style.display = "none"; }
- ページを再表示してラベルで表示なことを確認する
便利機能:
「document.getElementById」の代わりに「gel」で省略することが可能。
function onLoad() {
gel("label_IO:9e7fa2bc2fb8e0103c515e972799b6d5").style.display = "none";
}
以上