GETBASETAGLIST  
説明

親タグから開始して、先祖タグの名前を取得します。

 
戻り値

大文字の先祖タグの名前をカンマで区切ったリストの文字列。リストの最初の要素は現在のタグです。現在のタグがネストされている場合は、次の要素が親タグになります。トップレベルのタグに対してこの関数が呼び出されると、空の文字列が返されます。先祖タグからデータが得られない場合 (GetBaseTagData を参照)、その名前は返されません。

 
カテゴリ

その他の関数

 
関数のシンタックス
GetBaseTagList()
 
関連項目

GetBaseTagData、『ColdFusion MX 開発ガイド』の第11章の「カスタム CFML タグの作成と使用方法」 の「高レベルのデータ交換」

 
使用方法

この関数は、先祖タグリスト内の次のようなタグ、または終了タグは表示しません。

  • cfif、cfelseif、cfelse
  • cfswitch、cfcase、cfdefaultcase
  • cftry、cfcatch

この関数は、次のような条件でのみ次のようなタグを表示します。

  • cfloop: query 属性を使用している場合
  • cfoutput: 複雑な式を持つ子タグが 1 つでもある場合
  • cfprocessingdirective: pageencoding 以外にその他の属性が 1 つでもある場合
 
<!--- この例は、GetBaseTagList 関数の使用方法を示しています。 
通常は、カスタムタグ内で使用します。 --->
<cfif thisTag.executionMode is "start">
   <!--- タグのコンテキストスタックを取得
   リストには "CFIF,MYTAGNAME..." のように表示されます。 --->
   <cfset ancestorList = GetBaseTagList()>
    <br><br>GetBaseTagList の出力のダンプ:<br>
   <cfdump var="#ancestorList#"><br><br>
   <!--- 現在のタグ名を出力 --->
   <cfoutput>これはカスタムタグ #ListGetAt(ancestorList,1)# です。</cfoutput><br>
   <!--- このタグがループ内でネストされているかどうかを調べる --->
   <cfset inLoop = ListFindNoCase(ancestorList, "cfloop")>
   <cfif inLoop>
      cfloop タグのコンテキスト内で実行中です。<br>
   </cfif>
</cfif>