Web Developer's Room
HOME > XML講座 > XMLの操作(レコードの移動)     

XMLの操作(レコードの移動)

バインドしたXMLを1行だけ表示し、次レコードや前レコードを行うサンプルです。
XMLDoc.recordset.movePrevious()で前レコードへ、XMLDoc.recordset.moveNext()で次レコードへ移動します。

test.xml
<?xml version="1.0" encoding="Shift_JIS"?>
<records>
  <record>
  <private>
    <name>伊藤 太郎</name>
    <address>XX市XX町XX番地</address>
    <old>1974/04/01</old>
    <tel>090-xxxx-xxxx</tel>
  </record>
  </private>
  <private>
  <record>
    <name>田中 花子</name>
    <address>YY市YY町YY番地</address>
    <old>1980/12/11</old>
    <tel>090-yyyy-yyyy</tel>
  </record>
  </private>
  <private>
  <record>
    <name>鈴木 次郎</name>
    <address>ZZ市ZZ町ZZ番地</address>
    <old>1976/08/25</old>
    <tel>090-zzzz-zzzz</tel>
  </record>
  </private>
</records>

<html>
<body>
<xml id="XMLDoc" src="test.xml"></xml>

<table datasrc="#XMLDoc" border=1>
  <thead>
  <tr>
    <th>name</th>
    <th>address</th>
    <th>tel</th>
    <th>birth</th>
  </tr>
  </thead>
  <tr>
    <td><div datafld=name"></div></td>
    <td><div datafld=address"></div></td>
    <td><div datafld=birth"></div></td>
    <td><div datafld=tel"></div></td>
  </tr>
</table>

<input type="button" value="前レコード" onclick="XMLDoc.recordset.movePrevious()">
<input type="button" value="次レコード" onclick="XMLDoc.recordset.moveNext()">

</body>
</html>

 サンプル

さらに、レコードありなしチェックを入れます。
XMLDoc.recordset.AbsolutePositionが現在のレコード位置になります。

<html>
<body>
<script language="javascript">
<!--
function movePrevious() {
  if (XMLDoc.recordset.AbsolutePosition > 1) {
    XMLDoc.recordset.movePrevious();
  } else {
    alert("前レコードがありません。");
  }
}

function moveNext() {
  if (XMLDoc.recordset.AbsolutePosition < XMLDoc.recordset.RecordCount) {
    XMLDoc.recordset.moveNext();
  } else {
    alert("次レコードがありません。");
  }
}
-->
</script>

<xml id="XMLDoc" src="test.xml"></xml>

<table datasrc="#XMLDoc" border=1>
  <thead>
  <tr>
    <th>name</th>
    <th>address</th>
    <th>tel</th>
    <th>birth</th>
  </tr>
  </thead>
  <tr>
    <td><div datafld=name"></div></td>
    <td><div datafld=address"></div></td>
    <td><div datafld=birth"></div></td>
    <td><div datafld=tel"></div></td>
  </tr>
</table>

<input type="button" value="前レコード" onclick="movePrevious()">
<input type="button" value="次レコード" onclick="moveNext()">

</body>
</html>

 サンプル


関連リンク
  • XMLとは
  • XMLの作り方
  • XMLの構造
  • XMLの操作(レコードの追加)




  • スポンサードリンク


    (C) Web Developer's Room All rights reserved.