26.16 JS_LITERAL_CLOBファンクション
このファンクションは、JavaScript文字列をエスケープし、オプションで、引用符で囲みます。このファンクションは、影響を受ける文字を\xHH
または\uHHHH
と同等のものに置換します。結果は、<script>
タグ内またはインライン(javascript:nnn
)のJavaScriptコードに挿入できます。影響を受けない文字を次に示します。
a
からz
A
からZ
0
から9
- カンマ
,
- ピリオド
.
- アンダースコア
_
出力を引用符で囲まない場合、パラメータp_quote
はNULLになります。
p_quote
に値を指定すると、& < > " ' ` / \ %を除く、出力可能なASCII 7
文字がエスケープされなくなります。
構文
APEX_ESCAPE.JS_LITERAL_CLOB (
p_string IN CLOB )
RETURN CLOB;
パラメータ
パラメータ | 説明 |
---|---|
p_string |
エスケープされるテキスト文字列。 |
p_quote |
NULL以外の場合、この文字列は結果の左および右に配置されます。引用符文字は、一重引用符または二重引用符である必要があります。 |
例
次の例では、JS_LITERAL
を使用してl_string
変数内の特殊文字をエスケープする方法を示します。
DECLARE
l_string clob := 'O''Brien';
BEGIN
sys.htp.p(
to_clob('<script>')||
'alert(' || apex_escape.js_literal_clob(l_string) || ');' ||
'</script>' );
END;
親トピック: APEX_ESCAPE