20.11 ADD_VALUEファンクションのシグネチャ1

このファンクションは、二重引用符で囲まれたエスケープされたテキストを戻します。たとえば、"That\'s a test"のような文字列が戻されます。

注意:

このファンクションは、HTMLタグはエスケープしません。HTMLタグがJavaScriptオブジェクトの属性の割当てに悪影響を与えないようにするだけです。XSS(クロスサイト・スクリプティング)攻撃を防ぐには、SYS.HTF.ESCAPE_SCをコールして、HTMLページに文字列を差し込む際に、埋め込まれたJavaScriptコードが実行されるのを防ぐ必要もあります。

構文

APEX_JAVASCRIPT.ADD_VALUE (
    p_value          IN VARCHAR2,
    p_add_comma      IN BOOLEAN :=TRUE)
RETURN VARCHAR2;

パラメータ

表20-10 ADD_VALUEのシグネチャ1のパラメータ

パラメータ 説明

p_value

エスケープされ、二重引用符で囲まれるテキスト。

p_add_comma

p_add_commaがTRUEの場合、後続のカンマが追加されます。

次の例では、onloadバッファにいくつかのJavaScriptコードを追加します。p_item.attribute_01の値を、まず、XSS攻撃を防ぐためにhtf.escape_scでエスケープし、apex_javascript.add_valueをコールしてJavaScript変数lTestに割り当てます。Add_valueは、値を適切にエスケープし、二重引用符で囲みます。カンマは不要なため、p_add_commaはFALSEに設定します。

apex_javascript.add_onload_code (
    'var lTest = '||apex_javascript.add_value(sys.htf.escape_sc(p_item.attribute_01), FALSE)||';'||chr(10)||
    'showMessage(lTest);' );