XMLCHILDPOS  
説明

XML ドキュメントオブジェクト内の子要素の位置を取得します。

 
戻り値

XmlChildren 配列内で、指定された名前を持つ N 番めの子要素の位置

 
カテゴリ

XML 関数

 
関数のシンタックス
XmlChildPos(elem, childName, N) 
 
関連項目

IsXmlElem、XmlElemNew、XmlSearch、XmlTransform、『ColdFusion MX 開発ガイド』の第35章の「XML および WDDX の使用」

 
ヒストリ

ColdFusion MX: この関数が追加されました。

 
パラメータ

 
使用方法

ArrayInsertAt 関数と ArrayDeleteAt 関数の返されたインデックスを使用して、XML ドキュメントオブジェクトを変更することができます。指定された子が見つからない場合、この関数は -1 を返します。

 

次の例では、XML ドキュメント要素 xmlobject.employee.name[1] を、その 2 番めの Status 子要素について検索し、ArrayDeleteAt 関数内の位置を使用して要素を削除します。

<!--- XML ドキュメントオブジェクトを作成 --->
<cfxml variable="xmlobject">
<employee>
   <!-- 従業員のリスト -->
   <name EmpType="Regular">
      <first>Almanzo</first>
      <last>Wilder</last>
      <Status>Medical Absence</Status>
      <Status>Extended Leave</Status>
   </name>
   <name EmpType="Contract">
      <first>Laura</first>
      <last>Ingalls</last>
   </name>
</employee>
</cfxml>

<!--- 最初の employee.name 要素の 2 番めの Status 子要素を検索 --->
<cfscript>
elempos=XMLChildPos(xmlobject.employee.name[1], "Status", 2);
ArrayDeleteAt(xmlobject.employee.name[1].XmlChildren, elempos);
</cfscript>

<!--- 結果のドキュメントオブジェクトをダンプして削除を確認 --->
<cfdump var="#xmlobject#">
ELEM  
XML 要素です。この中を検索します。
CHILDNAME  
検索する XML 子要素です。elem パラメータの直接の子でなければなりません。
N  
検索する XML 子要素のインデックスです。