2016-06-01 11 views
0

Classic ASPサイトで作業する作業があり、ループ内で次の情報を解析する必要があります。古典的なASPを使用したXML親ノードの検索

XML:

<rows> 
    <row id='3'> 
     <cell>3-1</cell> 
     <cell>3-2</cell> 
     <cell>3-3</cell> 
     <cell>3-4</cell> 
     <row id='2'> 
      <cell>2-1</cell> 
      <cell>2-2</cell> 
      <cell>2-3</cell> 
      <cell></cell> 
     </row> 
     <row id='A'> 
      <cell>A-1</cell> 
      <cell>A-2</cell> 
      <cell>A-3</cell> 
      <cell>A-4</cell> 
     </row> 
    </row> 
    <row id='7'> 
     <cell>ABC</cell> 
     <cell>3</cell> 
     <cell>0</cell> 
     <cell></cell> 
    </row> 
    <row id='B'> 
     <cell>B-1</cell> 
     <cell>B-2</cell> 
     <cell>B-3</cell> 
     <cell>B-4</cell> 
     <row id='B-1'> 
      <cell>B-1-1</cell> 
      <cell>B-2-2</cell> 
      <cell>B-3-3</cell> 
      <cell>B-4-4</cell> 
      <row id='B-1-1'> 
       <cell>B-1-1</cell> 
       <cell>B-2-2</cell> 
       <cell>B-3-3</cell> 
       <cell>B-4-4</cell> 
      </row> 
     </row> 
    </row> 
</rows> 

募集結果:

PID:/ID : 3/3-1/3-2/3-3/3-4/ 
PID: 3/ ID : 2/2-1/2-2/2-3// 
PID: 3/ ID : A/A-1/A-2/A-3/A-4/ 
PID:/ID : 7/ABC/3/0// 
PID:/ID : B/B-1/B-2/B-3/B-4/ 
PID: B/ ID : B-1/B-1-1/B-2-2/B-3-3/B-4-4/ 
PID: B-1/ ID : B-1-1/B-1-1/B-2-2/B-3-3/B-4-4/ 

クラシックASPコード:

Set Nodes = oDOM.getElementsByTagName("row") 

For each Subnodes in Nodes 

    Response.Write("PID : " + ?????? + "/") 
    Response.Write("ID : " + CStr(SubNodes.getElementsByTagName("cell")(0).parentNode.Attributes(0).Text) + "/") 

    Response.Write(SubNodes.getElementsByTagName("cell")(0).Text + "/") 
    Response.Write(SubNodes.getElementsByTagName("cell")(1).Text + "/") 
    Response.Write(SubNodes.getElementsByTagName("cell")(2).Text + "/") 
    Response.Write(SubNodes.getElementsByTagName("cell")(3).Text + "/") 
    Response.WRite("<br>") 
Next 

私は親IDを取得したいと考えていますがNodes.parentNode機能していません。どのように私は両親のIDを得ることができますか?前もって感謝します。

答えて

0

変数Subnodesにはすでに「行」が含まれています。したがって、SubNodes.Attributes(0).Textは行IDを生成する必要があります。

また、私は一度だけ(当然行あたり)SubNodes.getElementsByTagName("cell")を実行し、あなたがそうのように、配列としてアクセスできる変数に結果を格納するために助言する:

set cells = SubNodes.getElementsByTagName("cell") 

Response.Write(cells(0).Text + "/") 
Response.Write(cells(1).Text + "/") 
Response.Write(cells(2).Text + "/") 
Response.Write(cells(3).Text + "/") 

は、そうでなければ、あなたが探しています使用している各アイテムのDOM内のすべてのサブセル。

関連する問題