45.21 GET_ELEMENT_ATTRIBUTESファンクション

このファンクションは、一貫性のある属性セットを取得するためにHTMLタグ(input、selectまたはtextareaを含む)を生成するHTML要素の標準属性(ID、name、required、placeholder、aria-error-attributes、classなど)の一部を戻します。

構文

APEX_PLUGIN_UTIL.GET_ELEMENT_ATTRIBUTES (
    p_item                   IN apex_plugin.t_item,
    p_name                   IN VARCHAR2 DEFAULT NULL,
    p_default_class          IN VARCHAR2 DEFAULT NULL,
    p_add_id                 IN BOOLEAN  DEFAULT TRUE,
    p_add_required           IN BOOLEAN  DEFAULT TRUE,
    p_add_labelledby         IN BOOLEAN  DEFAULT TRUE,
    p_aria_describedby_id    IN VARCHAR2 DEFAULT NULL,
    p_add_multi_value        IN BOOLEAN  DEFAULT FALSE ) 
RETURN VARCHAR2;

パラメータ

パラメータ 説明
p_item プラグイン・ファンクションのp_itemパラメータ。
p_name apex_plugin.get_input_name_for_page_itemによって戻される値。
p_default_class 結果文字列に含まれるデフォルトのCSSクラス。
p_add_id TRUEの場合、結果文字列にID属性も含まれます。
p_add_required 必要なHTML属性を含めるにはTRUEに設定します。これは、内部的に、p_itemが必須としてマークされているかどうかをチェックします。
p_add_labelled_by

FALSEに設定すると、aria-labelledby属性の指定を必要としない、input、select、textareaなどのHTML入力要素がレンダリングされます。これは、ラベルのfor属性がこれらのHTML入力要素に対して機能するためです。

すべての非標準フォーム要素ウィジェット(divまたはspanを使用するものなど)の場合はTRUEに設定し、スクリーン・リーディング・ソフトウェアのフォーカスを有効にします。

ノート:

aria-labelledbyを含めるには、アイテム・プラグインで「標準のフォーム要素」を「いいえ」に設定し、アイテムの対応するラベル・テンプレートで#LABEL_ID#置換を定義する必要があります。
p_aria_describedby_id フォーム要素でaria-describedby属性のためにget_element_attributesがレンダリングする値に含める追加のIDをここで渡します。これは、フォーム・フィールドに焦点を当てているときに、アシスティブ・テクノロジのユーザーに追加情報を伝達するために使用されます。
p_add_multi_value TRUEの場合、複数の値(複数値、複数値ストレージ、複数値セパレータ)について必須属性を表示します。複数値インフラストラクチャをサポートしているアイテムの場合に使用されます。

この例では、最も一般的な属性が自動的に含まれるように、apex_plugin_util.get_element_attributesを使用するテキスト・タイプのINPUTタグを生成します。

sys.htp.prn (
    '<input type="text" ' ||
    apex_plugin_util.get_element_attributes(p_item, l_name, 'text_field') ||
    'value="'||l_escaped_value||'" '||
    'size="'||p_item.element_width||'" '||
    'maxlength="'||p_item.element_max_length||'" '||
    ' />');